% find /var/log/trafficserver -name '*.old' -exec gzip {}\;
find: missing argument to `-exec'簡単なscriptを作っていたところ、上記のようなエラーメッセージが。
ちょいと調べてみると、\;の前にはブランクが必要とのこと。
403 Forbidden
これぐらいで躓くとは本当に情けない。
でもこれならxargsで繋いだほうがいいかなと思ったのだけれど、そもそも-execとxargsの違いがわからなかったので、またもWebを検索してみた。
非常に長い引数のリストはコマンドに渡すことが出来ない[1]が、xargsを使うことによって引数リストをシステムが受け入れられるサイズに分割してコマンドに渡してくれる。
http://ja.wikipedia.org/wiki/Xargs
今回のようなミス(といっても自分の注意不足だけれども)のようなことを考えると、xargsを常用するのが良いのかな? 使い分けるなどのような明確な基準があるのだろうか?
とりあえずshell scriptビギナーから脱したいなぁ・・・