0
内テストを使用して、私は特定の条件のためのサブディレクトリ内のファイルを解析して、何かを実行するためのタスクを持っているので、私は正常に動作し、このようなコードを持っている:私がしようとすると、xargsの
cat FILENAME | grep -qe 'condition'; \
test $? -ne 0 && echo -ne '\n add condition to file \n'>>FILENAME
しかし、 test $? -ne 0
内部xargsのは、常に実際のgrepの結果despites、trueと評価することを
git grep -e "condition" | awk -F : 'BEGIN {} { print $1 } END {}'| sort| uniq |\
xargs -I {} -i bash -c "cp {} {}.updated; echo -ne 'Processing: {}\n'; \
cat {}.updated | grep -qe 'condition'; \
test $? -ne 0 && echo -ne '\n add condition\n' >>{}.updated; \
mv {} {}.backup; mv {}.updated {}; echo -ne ' End\n';"
問題:xargsの声明でこれを使用するために、私はいくつかの問題を抱えています。
'catファイル| grep -qe条件。テスト$? -ne 0 && 'は狂っています。代わりに 'grep -qe condition file &&'を使用してください。 – Sorpigal
ありがとう、私はそれを使用していたが、私のコマンドが機能していないとき、私はそれを試し始めた。 – Vestel