すべてのフォルダーを1つのディレクトリから1つのディレクトリに再帰的に移動する方法


15

地形やオブジェクトと呼ばれるフォルダーを含む風景/地形にフォルダーがあります。これらのフォルダーには、データファイルのあるフォルダーがあります。すべてのコンテンツの風景/地形/ [名前] /地形を風景/地形に移動し、風景/地形/ [名前] /オブジェクトの内容を風景/オブジェクトに移動するにはどうすればよいですか?

回答:


19

mvコマンドには再帰的なオプションがないため、移動するディレクトリ内にディレクトリがある場合は、を使用する必要がありますcp。これはどう:

cp -R scenery/terrain/*/terrain/* scenery/terrain/
cp -R scenery/terrain/*/objects/* scenery/objects/

そして、それがうまくいったと確信したら:

rm -rf scenery/terrain/*/terrain
rm -rf scenery/terrain/*/objects

良い点ですが、Mac OSではcp -R(大文字のR)になると思います。
QSQ

@QSQ修正していただきありがとうございます。今それを修正しました。
ライアン

-rは正常に動作しました。
アンドリューD.

1
mv scenery/terrain/*/terrain/* scenery/terrain/
mv scenery/terrain/*/objects/* scenery/objects/

何かを誤解した場合に備えて、フォルダーのコピーで試してみてください:
QSQ

今は遅すぎます。13 GBのシーナリーをいつでも再トレントできます。
アンドリューD.

動作しませんでした。「ディレクトリが空ではない」と述べている
アンドリューD.

うーん 私はここでそのようなツリーを構築し、scenario / terrain / a / terrain / scenery / terrain / b / terrain /およびscenery / terrain / a / objects /およびscenery / terrain / b / objects /にファイルを入れて試してみました
QSQ

ファイルの競合を防ぐために、現在の/ terrain dirを別の場所に移動しようとすることはできますか?
アンドリューD.
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.