有什么区别? ./ ./*在Linux

问题描述:

当我复制文件

,在linux下执行该文件,我不太理解上的差异,以及如何使用它们。有什么区别? ./ ./*在Linux

请大家帮忙。谢谢。

.意味着当前目录
./意味着当前目录,也
./*意味着在当前目录下的所有文件

+0

当我使用'adb push。/sdcard /'在终端中。和./是可以的,但./*将不起作用。我不知道为什么。 – punan 2014-12-19 10:19:59

+0

@punan什么是错误? – mathk 2014-12-19 10:32:47

+0

@punan这可能是因为方法[外壳通配(http://en.wikipedia.org/wiki/Glob_%28programming%29)的作品,事实上,亚行是非常简单的,当谈到解释变量。 – Darkhogg 2014-12-19 10:32:54

./*是在当前目录下的所有文件
./是当前目录

.意味着当前的目录,./是相同的,但更明确,说:“嘿,我是一个目录!”它就像任何其他文件夹:TheFolderTheFolder/指的是同一个对象。其中的含义是不同的一种情况是看在一个目录指向一个符号链接时:TheLink可以指链接对象或您指向,视情况而定,而TheLink/总是引用目录的目录。此外,当您运行rsync命令,它将把TheFolderTheFolder/不同。

./*仅仅意味着在当前目录下的所有文件,同*。 Bash在命令运行之前扩展了这个星号,所以程序不会看到星号,而是将所有文件看作参数。这两者之间的区别在于,对于前者,该命令会在每个文件名前加上“./”。

,以了解这些差异,echo是一个安全的命令来运行。它只是将打印你所发送的值:

echo * 
echo ./* 

../都意味着当前工作目录

../意味着当前工作目录的父目录

./*意味着所有的文件和目录在当前工作目录中加上当前工作目录中所有目录中的所有文件和目录。