*(1)*
なぜディレクトリ内のすべてを削除するのですか?それでは、(1)
途中で名前のあるすべてのファイルを選択する方法は?
使用されたコマンドはrm *(1)*
orですrm -rf *(1)*
(明確に覚えていません)。これがデフォルトのUbuntuシェルです。
ベストアンサー1
Bashで設定されているようなkshスタイル拡張グローブを有効にすると、extglob
パターンは*(1)*
実際にはすべてのファイル名と一致します。この*(...)
構文は、括弧で囲まれた部分のゼロ以上のコピーと前のコピー(存在する場合)と一致します。その後、*
残りの部分を一致させます。
POSIXに似たシェルを使用する場合いいえ(
拡張globの場合、演算子がその構文に合わないため、エラーが発生します。
*1*
デフォルトでは、zshはグループ化にのみ使用される角かっこと同じだと思います。ただし、kshglob
シェルオプションを設定すると、kshルールが使用されます。
extglob
最新バージョンのUbuntuは、基本的にインタラクティブシェルでBashに設定されていると思います。
(1)
ファイルを中間のテキストセクションと一致させるには、セクションまたは少なくとも括弧(*\(1\)*
、または)を引用またはエスケープします*"(1)"*
。