Bash の隠しファイルのグロブ

Bash の隠しファイルのグロブ

私は bash シェルで次の glob を試しています:

$ ls -d .*
.  ..  .a  .ab
$ ls .a*
.a  .ab
$ ls .[!.]*
.a  .ab
$ ls .[!.]?*
.ab

最後の式は、「ドットの後にドット以外の文字が 1 つ続き、その後に 0 個以上の文字が続く」という意味ではないでしょうか。なぜ一致しないのでしょうか.a

答え1

あなたは間違っています。これは、「ドットの後にドット以外の文字が 1 つ続き、その後に 1 つの文字が続き、その後に 0 個以上の文字が続く」という意味です。.aそれに一致する文字数が足りません。

でも、本当に、 を設定するだけですdotglob

関連情報