它是否在所有目录中显示隐藏文件名?或者只是当前目录(包括其中的任何目录)?我不明白为什么ls -ld .*返回不同的结果(它只显示当前目录中的隐藏文件和目录,而不显示其中任何其他目录中的文件)?-d单独做什么(ls -d)?
ls -al .*显示当前目录中名称以开头的所有目录的内容.(即所有与 shell glob 匹配的目录.*)
在 Bash 中,.*glob 也解析为.and ..。由于.表示当前目录和..父目录,因此也显示了这两个目录的内容,包括任何隐藏的文件和目录。1
.* 还捕获当前目录中的隐藏文件,但它们无论如何都被列为 .
如“ls --directory”代表什么?该-d标志导致显示目录本身,而不是其内容。
1这也是 dash 的情况,它是shUbuntu 中符号链接的 shell 。但是,包括 zsh 和 mksh 在内的其他 shell 的行为更直观,.并且..在扩展.*. 还值得一提的是,虽然大多数命令将要操作..和.当它们包括在.*水珠(包括chmod和chown-你真的可以搞砸你的系统的),该rm命令将很有帮助设计没有这样做。
| 归档时间: |
|
| 查看次数: |
5982 次 |
| 最近记录: |