有什么区别? ./ ./*在Linux
答
.
意味着当前目录./
意味着当前目录,也./*
意味着在当前目录下的所有文件
答
./*是在当前目录下的所有文件
./是当前目录
答
.
意味着当前的目录,./
是相同的,但更明确,说:“嘿,我是一个目录!”它就像任何其他文件夹:TheFolder
和TheFolder/
指的是同一个对象。其中的含义是不同的一种情况是看在一个目录指向一个符号链接时:TheLink
可以指链接对象或您指向,视情况而定,而TheLink/
总是引用目录的目录。此外,当您运行rsync
命令,它将把TheFolder
和TheFolder/
不同。
./*
仅仅意味着在当前目录下的所有文件,同*
。 Bash在命令运行之前扩展了这个星号,所以程序不会看到星号,而是将所有文件看作参数。这两者之间的区别在于,对于前者,该命令会在每个文件名前加上“./”。
,以了解这些差异,echo
是一个安全的命令来运行。它只是将打印你所发送的值:
echo *
echo ./*
答
.
和./
都意味着当前工作目录
../
意味着当前工作目录的父目录
./*
意味着所有的文件和目录在当前工作目录中加上当前工作目录中所有目录中的所有文件和目录。
当我使用'adb push。/sdcard /'在终端中。和./是可以的,但./*将不起作用。我不知道为什么。 – punan 2014-12-19 10:19:59
@punan什么是错误? – mathk 2014-12-19 10:32:47
@punan这可能是因为方法[外壳通配(http://en.wikipedia.org/wiki/Glob_%28programming%29)的作品,事实上,亚行是非常简单的,当谈到解释变量。 – Darkhogg 2014-12-19 10:32:54