我想 glob 每个隐藏文件和目录,但不是当前 ( .
) 和父目录 ( ..
)。
我正在使用 bash。
观察当前行为:
$ ls -a
. .. ...a ...aa ..a ..aa .a .aa .aaa a
$ echo *
a
$ echo .*
. .. ...a ...aa ..a ..aa .a .aa .aaa
Run Code Online (Sandbox Code Playgroud)
我想.*
表现得像这样
$ echo .*
...a ...aa ..a ..aa .a .aa .aaa
Run Code Online (Sandbox Code Playgroud)
有外壳选项 dotglob
$ shopt -s dotglob
Run Code Online (Sandbox Code Playgroud)
这在某种程度上起作用;现在我可以使用*
glob 的所有内容(隐藏或不隐藏)但不能.
和..
$ echo *
...a ...aa ..a ..aa .a .aa .aaa a
Run Code Online (Sandbox Code Playgroud)
但现在我无法区分隐藏与否。此外, …