在我的Ubuntu版本中,man ls有关于--目录的下一个信息:
list directory entries instead of contents, and do not dereference symbolic links所以我有点搞不懂它是怎么工作的。我使用了命令ls --directory,我期望得到一个包含所有目录的列表,但是我得到了.
那么,ls --directory或ls -d到底是做什么的呢?
发布于 2017-03-04 17:40:42
使用ls -d本身是相当无用的,因为如果没有参数,它总是返回.。但是,在指定参数之后,这是有意义的。例如,如果您的用户名是rick,并且您希望查看家庭使用中的所有目录:
$ ls -d /home/rick/*/
/home/rick/AAC/ /home/rick/EnhanceIO/ /home/rick/silentcast/
/home/rick/assembly/ /home/rick/EnhanceIO-master/ /home/rick/Templates/
/home/rick/bin/ /home/rick/log/ /home/rick/test/
/home/rick/Desktop/ /home/rick/Music/ /home/rick/tmpe/
/home/rick/Documents/ /home/rick/Pictures/ /home/rick/Videos/
/home/rick/Downloads/ /home/rick/Public/发布于 2017-03-04 17:20:36
让我举例说明:
ls:列出目录的内容ls -d或ls --directory:列出目录本身,而不是目录的内容示例:
ls -d android-sdk-linux/
# result
android-sdk-linux/
ls android-sdk-linux/
# result
add-ons build-tools platforms platform-tools SDK Readme.txt temp tools您的ls -d这个例子只显示了我所在的目录,而不是它的内容(也就是说,. ),所以结果是:.。
但是,如果您曾经说过:ls,那么您将看到当前目录.中存在的所有内容。
发布于 2017-03-04 17:24:10
ls -d列表目录他们自己,而不是他们的内容。文件被列为正常文件。查看man ls以了解所有选项的描述。
.是它自己的目录,与从当前目录./runscript.sh运行命令时使用的目录相同
..是父目录,父目录指向当前方向,就像在cd ..中移动在目录层次上一样。
https://askubuntu.com/questions/889540
复制相似问题