誰もがbashでファイルを見つけてコピーする別の方法を持っています:
find . -ctime -15 | awk '{print "cp " $1 " ../otherfolder/"}' | sh
私はこの方法が好きです。なぜなら、コマンドを(任意のコマンドで)作成してから実行するため、柔軟性があるからです。
コマンドをファイルのリストに合理化する他の方法はありますか?
ありがとう
find
の-exec
オプション:
find . -ctime 15 -exec cp {} ../otherfolder \;
いつものように、最良の結果を得るにはマンページを参照してください。
私は通常これを使用します:
find . -ctime -15 -exec cp {} ../otherfolder/ \;
cp
がGNUの場合:
find . -ctime 15 -print0 | xargs -0 cp --target-directory=../otherfolder
xargs
でできます:
$ find . -ctime 15 -print0 | xargs -0 -I{} cp {} ../otherfolder
シェルスクリプトのgrepユーティリティ も参照してください。
これをコピーや他の多くのものに使用します。
for f in $(find /apps -type f -name 'foo'); do cp ${f} ${f}.bak; cmd2; cmd3; done;