09/01/03 15:23:43 0
SL-C3000と他のLinuxのxargs(シェル?)で引用符の扱いが違うんですかね?
SL-C3000は以下の通りエスケープ(面倒!)しないとエラーが出ます。
皆さんのところで再現するか教えてください。
もちろんgrep単体では引用符のエスケープは不要です。
シェルはbash、xargsはbusybox(要はデフォルト)です。
find . -name '*.txt' | xargs grep "aa bb" /dev/null
grep: bb: No such file or directory ←エラー
find . -name '*.txt' | xargs grep 'aa bb' /dev/null
grep: bb: No such file or directory ←エラー
find . -name '*.txt' | xargs grep \"aa bb\" /dev/null
←OK
(比較した物:産総研のKnoppix5.1、bash3.1.17、xargs4.2.28)
find . -name '*.txt' | xargs grep "aa bb" /dev/null
←OK
find . -name '*.txt' | xargs grep 'aa bb' /dev/null
←OK
find . -name '*.txt' | xargs grep \"aa bb\" /dev/null
grep: bb": そのようなファイルやディレクトリはありません ←エラー