間違いだらけの備忘録

このページの内容は無保証でありこのページの内容によって直接、または間接に損害を受けられたとしても私は責任を取りません。

find複数処理

findのexecに&&が使えなくて友人に聞いてみたところ、
findの引数は順々に正のものが評価されるらしい

NG

find . -name '*.txt' -type f -exec 7zr a {}.7z {} && mv {} /tmp \;

OK

find . -name '*.txt' -type f -exec 7zr a {}.7z {} \; -exec mv {} /tmp \;

ただし、gnu findでないと{}.7zのような表現が許されないかもしれないので、
正しくはシェルスクリプトを書くべき...だそうだ。


参考
ちょっとだけカッコよく find(1) を使う
http://www.sixnine.net/roadside/find.html
UNIX FAQ LIST
http://www.nurs.or.jp/~asada/FAQ/UNIX/UNIX.FAQ.html
http://www.nurs.or.jp/~asada/FAQ/UNIX/section3.4.html

このページにはhatena以外のサービスからのコンテンツが埋め込まれています。 hatenaによりGoogle AdSense 広告が埋め込まれています。