Main_Directory
|
Event_Subdirectories
|
*.mcp .otherfiles
すべてのEvent_SubdirectoriesをEvent_subdirectoryに* .mcpファイルを持つ別のMain_Directoryにコピーしたいのですが、どうすればいいのかわかりません。 rsyncを使用していますか?
答え1
同期
rsyncを使用すると簡単にする必要がありますが、完全ではありません。
存在すると仮定し、./new_Main_Directory
そうでない場合mkdir ./new_Main_Directory
rsync -a --include '*/' --include '*.mcp' --exclude '*' Main_Directory/ new_Main_Directory/
これにより、* .mcpファイルとそのファイルを含むディレクトリ構造のみがコピーされます。このオプションを使用すると、いつでもrsync
コマンドをテストできます--dry-run
。
源泉:http://ubuntuforums.org/showthread.php?t=763833
CP
cpを使用するには、以下を試してください。
for d in ./*/; do
set -- "$d/"*.mcp
if [ -e "$1" ]; then
# there is at least one .mcp file in $d
cp -rp -- "$d" ./new_Main_Directory/
fi
done
答え2
rsyncコマンドは実際には機能しませんが、この小さなforループスクリプトは正常に実行されます。他の任意のファイルをコピーしましたが、そのファイルは削除されました。