带-aF选项的ls输出不清楚

时间:2016-10-01 10:59:05

标签: linux bash command-line ls

当我在任何目录中尝试使用ls -aF选项时,无论它是否为空,我总是得到以下内容:

./  ../ 

那么当我将这两个选项与ls命令一起使用时输出意味着什么呢?

1 个答案:

答案 0 :(得分:0)

使用ls时,您正在读取目录文件,而不是实际查找目录。每个目录列表都包含当前/当前目录的条目,以及它的父目录,就像您希望在任何目录列表中看到子/子目录的列表一样。

ls的-A选项只是告诉ls显示所有文件,其中包括./&的条目。 ../现在和父母。请注意,这些点只是shell(bash)用来表示这些文件的文件路径的简写。换句话说,如果您当前在桌面目录中执行ls,那么“./”实际上意味着〜/ Desktop。并且“../”将表示“〜/”,它只是表示用户主目录的另一个符号缩写,可能类似于macOS(OS X)上的/ Users / your_username,或者各种Linux发行版的/ usr / your_username 。请注意,这些路径也可以使用末尾附加的正斜杠编写,并且意味着相同的事情(例如,/ Users / your_username /与/ Users / your_username相同,因为它们都是对其他目录的引用(目录文件)

如果您不想看到./&amp ;;请使用ls的-a选项。 ../,但仍想查看(其他)隐藏文件。

使用-F选项会使ls根据文件类型向文件类型显示附加字符。这就是为什么目录显示在末尾附加正斜杠,可执行文件显示为可执行*(附加星号),常规文件没有附属物(例如.txt,.png,.dmg)。