Linuxでファイル名を表示するディレクトリにワイルドカードを使用しますか?

Linuxでファイル名を表示するディレクトリにワイルドカードを使用しますか?

したがって、私が調査した問題の1つは、filesディレクトリの内容を表示するワイルドカードを使用すると特定の内容を表示することです。この場合、目標は使用することで、ls私が見逃した部分はstatのファイル名は 。ただし、.になる可能性のあるaすべてのファイルを除外します。aaab

ヒントがある場合は、引き続きブラウズして投稿して回答します。ワイルドカードを使用するのに役立つと便利です。ありがとう

答え1

場所で始まるaが場所を含まないaaファイル名を一致させるには、

を使用すると、zsh -o extendedglob次のことができます。~ とは別にオペレーター:

ls -ld a*~*aa*

そしてbash -O extglob -O failglob

ls -ld !(!(a*)|*aa*)

答え2

複数の条件を使用して複雑なファイルglobを実行することは、シェルでは困難です。これにより、使いやすくなりますfind

find files -maxdepth 1 -name 'a*' ! -name '*aa*' -type f -print

これにより、ディレクトリからfiles始まるaが部分文字列を含まない通常のファイルのパス名が出力されますaa

ls -l動作を取得する-printにはに変更します-ls

答え3

私が見つけた答えはls a[!a]*

aこれにより、最初の文字で単語を見つけることができますが、何も見つかりません。aa

関連情報