.extensionを見つけて別のディレクトリに移動

.extensionを見つけて別のディレクトリに移動

私は特定のディレクトリで.jpgと.mp3を見つけて別のディレクトリに移動しようとしましたが、それが正しいコマンドであると確信していますが、うまくいきません。

$ find -iname *.jpg *mp3 -exec mv {} /Directory2 \; 

答え1

find誤って現在のディレクトリのファイルと一致するのを防ぐには、式でglobパターンを引用する必要があります。

また、-iname1つの引数だけを使用します。代替パターンを一致させたい場合-iname '*.jpg' -o -iname '*.mp3'などを使用できます。

だから(演算子優先順位参照)

find . \( -iname '*.jpg' -o -iname '*.mp3' \) -exec mv {} path/to/Directory2/ \; 

またはLinuxを使用しているので、GNU-tフォームmvとマルチファイルプレースホルダーを使用してください。{} +

find . \( -iname '*.jpg' -o -iname '*.mp3' \) -exec mv -t path/to/Directory2/ {} + 

関連情報