在Linux中,隐藏文件就是以.开头的文件,所以列出所有的隐藏文件,其实就是列出所有以.开头的文件。
ls .?*
上面这个方案有个问题,就是将目录里的内容也递归列出来了,这不是我们的诉求,增加-d参数,把目录当作文件展示出来
ls -d .?*
如果希望通过列表形式展示,还可以增加-l参数
ls -ld .?*
进一步,如果我们只想列出所有的隐藏目录呢,不显示隐藏文件,可以增加/,所有的目录都有这个。
ls -ld .?*/
其实上面这个情况,我们可以增加-p参数会更明显,一个-p就代表如果是目录就在后面多增加一个/显示出来。
ls -ldp .?*/
换另外一个情况,如果我们只想显示隐藏文件,不想显示隐藏目录要怎么办呢?其实顺着上一个方案就好了,既然可以识别所有的目录,当然可以排除所有的目录
ls -ldp .?* | grep -v /
当然这个议题我们可以不局限在使用ls命令,还可以使用find命令,比如列出当前目录的所有隐藏文件,不包含目录
find .?* -maxdepth 0 -type f
列出所有的隐藏目录,不包含文件,命令很清晰,唯一的遗憾就是不带颜色显示
find .?* -maxdepth 0 -type d
Top comments (0)