複数のディレクトリに多くの.zipファイルがあります。
Fol1/Fol2
Fol3
Fol4/Fol5
共通のデフォルトフォルダにすべて移動するにはどうすればよいですか?
ベストアンサー1
cd …
zipファイル()を含むツリーの最上位ディレクトリに移動して、次を実行します。
mv **/*.zip /path/to/single/target/directory/
これはzshですぐに利用できます。シェルがbashの場合は、shopt -s globstar
最初に実行する必要があります(このコマンドをシェルに入れて入れる必要があります~/.bashrc
)。シェルがkshの場合は、最初にset -o globstar
実行(に入れる必要があります~/.kshrc
)する必要があります。
またはfind
特別な準備なしでどこでも使用できますが、より複雑なものを使用してください。
find . -name '*.zip' -exec mv {} /path/to/single/target/directory/ \;
後で空のディレクトリを削除するには、zsh で次のようにします。
rmdir **/*(/^Fod)
Bashまたはkshから:
rmdir **/*/
そして、削除する必要がある空のディレクトリがある限り繰り返します。またはどのシェルでも
find . -depth -type d -empty -exec rmdir {} \;