要するに、これら2つのファイルを見つけて階層を下に下げるprefix.ext
ために本能的にこのような命令を書いたのです。prefix_suffix.ext
find /some/path -type f -name 'prefix?(_suffix).zip'
しかし、うまくいきません。
man find
、内部的にはモードを「シェルモード」と呼ぶので、どのモードを使用するかを制御できるか、特にオプションを使用できるかどうか疑問に-name patter
思います。extglob
ベストアンサー1
find
「デフォルト」シェルパターンのみを使用してください。POSIXに規定されているように。 -style globをサポートしていませんextglob
(GNU実装ではfnmatch
、GNU C ライブラリの実装はfnmatch
拡張モードをサポートします。)。
GNUを使用している場合は、find
正規表現を使用してフィルタリングできます。文書の関連部分詳細:
-regex '.*/prefix\(_suffix\)?\.zip'
デフォルトの正規表現型を使用するか、
-regextype posix-extended -regex '.*/prefix(_suffix)?\.zip'
EREで。