使用 zsh 列出当前目录的所有 dotfiles

jet*_*har 3 shell zsh wildcards

如何使用 zsh 列出目录中的所有点文件?

Gil*_*not 6

不仅

printf '%s\n' .*
Run Code Online (Sandbox Code Playgroud)

(但请注意,除该列表之外的某些 shellzsh将包含...

使用 zsh 语法,仅限于常规文件:

printf '%s\n' .*(.)
Run Code Online (Sandbox Code Playgroud)

列出包括隐藏文件在内的所有文件:

printf '%s\n' *(D)
Run Code Online (Sandbox Code Playgroud)

D对于(隐藏)文件。


kur*_*rtm 6

我们过去常用的经典方法是:

ls .??*
Run Code Online (Sandbox Code Playgroud)

这将列出所有点文件,但不包括.... 当然,无论是谁提出这个,都假设所有点文件都将在..

另一个弱点是,如果您有以 开头的目录.,那么该命令将列出它的内容。-d这个方面可以通过使用标志来修复ls。这告诉我们ls只显示命令行上指定的任何目录,而不深入研究它们。

如今,大多数版本都ls包含一个-A标志,该标志将列出目录中的所有点文件,但不包括...。而且您不必担心-d在那里放置旗帜。

  • 您可以使用“ls .[^.]*”之类的内容来纠正第一个方面 (4认同)