いくつかのフォルダー階層があり、一部のフォルダーには画像があります。すべての画像を一覧表示し、指定された 1 つのフォルダーにコピーできるシェル スクリプトが必要です。一覧表示は重要ではありません。すべての画像をフォルダーにコピーしたいだけです。 ?
自分ができるということがわかっている
ls -R *.png
しかし、どうすればそれらすべてを 1 つのフォルダーにコピーできますか?
ありがとう!
いくつかのフォルダー階層があり、一部のフォルダーには画像があります。すべての画像を一覧表示し、指定された 1 つのフォルダーにコピーできるシェル スクリプトが必要です。一覧表示は重要ではありません。すべての画像をフォルダーにコピーしたいだけです。 ?
自分ができるということがわかっている
ls -R *.png
しかし、どうすればそれらすべてを 1 つのフォルダーにコピーできますか?
ありがとう!
更新: glenn jackmanが指摘しているように、これは私が提供した回答よりも少し効率的に使用できます。
file . -type f -name \*.png | xargs cp -t destination
説明については、この回答に続くglennのコメントを参照してください。
1つの方法は使用することfindです:
find . -type f -name "*.png" -exec cp {} ~/path/to/your/destination/folder \;
説明:
findファイル/ディレクトリを見つけるために使用されます.現在の作業ディレクトリから検索を開始します(または、パスを指定できます)-type f:(ディレクトリではなく)ファイルのみを考慮-name "*.png":png拡張子を持つもののみを考慮してください-exec:見つかったそのような結果ごとに、何かを実行します(以下を参照)cp {} ~/path/to/your/destination/folder \;:これは何かをする部分です:見つかった(に置き換えられた{})そのような結果をそれぞれ、指定された宛先にコピーします。