我尝试过man ls
,然后我得到了
-d, --directory
列出目录条目而不是内容,并且不取消引用符号链接
正如手册所说,-d
意味着列出所有目录,但是当我输入时,ls -d
我得到了
drwxr-xr-x 35 *user group* 4.0K *date* 00:16 .
答案1
因为ls
默认情况下,引用当前目录。毕竟,这是最常见的用例:列出当前目录中的文件。
“-d”标志仅表示“不列出目录中的文件,仅列出目录本身”。
答案2
如果您只想列出当前目录中的(非隐藏)目录,请尝试使用find
如下所示:
find . -maxdepth 1 -type d -not -name "\.*"
在哪里:
-type d
仅关注目录(这是我认为您需要的)-name "\.*"
搜索隐藏文件(\
是为了转义.
字符)-not
取消对隐藏文件的搜索,因此您正在搜索非隐藏文件-maxdepth 1
避免进入更多子目录