私はコマンドラインディレクトリを取得し、スクリプトが実行されている現在のディレクトリにすべての内容を抽出する単純なシェルスクリプトを作成しました。
#!/bin/bash
cp -v -R $1/* .
これを拡張したいです。ディレクトリAのすべてのPNGファイルを抽出したいとしましょう。ただPNGファイルです。
最初は、.pngで終わるすべてのファイルをディレクトリから検索して分類しようとしましたが、これらのファイルだけをディレクトリにコピーする方法がわかりません。
ベストアンサー1
誰でも
find "$1" -name '*.png' -exec cp -v -- {} ./ \;
または(GNUを使用cp
)より効率的な方法
find "$1" -name '*.png' -exec cp -vt ./ -- {} +
あるいは、シェルがそれをサポートしている場合は、globbingを使用できます。bash
shopt -s globstar
cp -v -- "$1"/**/*.png ./