条件に応じてファイルを移動する

条件に応じてファイルを移動する

誰もが私の要件の解決策を見つけるのに役立ちますか?

要件は、ディレクトリーをスキャンし、そのディレクトリーに入ってくるすべてのファイルを読み取り、「AB00732614」などの開始文字列を検索するシェルスクリプトを作成する必要があることです。 AB*を含むすべてのファイルを検索し、ファイルを別のディレクトリに移動します。

ベストアンサー1

文字列ABなどを想定します。の一部ですコンテンツ移動するファイルの数:

find /path/to/dir -type f -exec grep -qE 'AB[0-9]{8}' {} \; -exec mv -i {} /path/to/destination/ \;

findこれは照会に使用されます/path/to/dir。各ファイルに、grep拡張正規表現(8桁の数字が続く文字列)AB[0-9]{8}と一致するものが含まれていることを確認してください。ABその場合、ファイルはディレクトリに移動されます/path/to/destination/

移動するファイルと同じ名前の別のファイルがターゲットディレクトリにすでに存在する場合は、そのファイルを上書きするかどうかを確認する必要があります。

おすすめ記事