如何递归列出所有隐藏文件和目录?

如何递归列出所有隐藏文件和目录?

我想列出所有隐藏文件和目录,然后将结果保存到文件中。

有这方面的命令吗?

答案1

如果使用 GNU find,你可以这样做

find /path -path '*/.*' -ls | tee output-file

编辑

避免显示隐藏目录中包含的非隐藏项目

find /path -name '.*' >output-file

(如上所述,tee如果您不需要查看输出,则可以避免,并且-ls仅在需要时才应使用选项)。

答案2

列出当前目录下的隐藏文件和目录,包括...

echo .*

递归列出当前目录及其子目录中的隐藏文件和目录:

find . -name '.*'

如果要将结果保存到文件中,请使用重定向:

find . -name '.*' >output-file.txt

答案3

zsh(使用全局限定符 D):

print -rl ./**/.*(D)

要将非隐藏文件包含在隐藏目录中:

setopt extendedglob
print -rl ./**/*~^*/.*(D)

答案4

实际上,您可以在同一命令行中多次放置相同的参数:

find /storage/????-????/ -iname '.*' -iname "*" | tee -a file-list-micSD-20190801163729.fli

tee -a命令能够显示命令的输出(或标准输出)同时将其写入文件。该-a选项可防止破坏并将信息附加到目标输出文件中。

/storage/????-????/是一个示例路径。它是较新的 Android 手机的 MicroSD 卡的路径(Android 也有一个终端应用程序,命令较少,但仍然很多,并且自 Android 6.0 以来显着增加)。 MicroSD 卡以前称为/storage/extSdCard.现在,它是卷序列号。

相关内容