ワイルドカード
アスタリスク(*) - なしを含むすべての文字が1つ以上一致します。
「文字を除く」が何を意味するのかを説明できる人はいますか?
答え1
Bashのマニュアルのフレーズは少し異なります。(一部のソースを選択するため):
*
空の文字列を含むすべての文字列と一致します。
*
「空の文字列」は、長さがゼロの文字列なので、任意の数の任意の文字と一致するか、まったく一致しないことを意味します。または 0 個以上の任意文字です。
foo*bar
たとえば、一致
foo1bar
(*
1文字と一致)foo22bar
(2文字)- しかし、これはとの間の長さがゼロの文字列
foobar
と一致するところです。*
foo
bar
など。
(また、*.txt
ファイル名は一致しますが、ドットで始まるファイル名は特殊な場合なので、ドットがパターンに明示的.txt
に指定されている場合、またはBashなどが設定されていない限り、一致しません。)dotglob
少なくとも1つの文字を必要とする場合は、require?*
以降を使用して?
正確に1つの文字と一致させることができます。