に私はbashスクリプト、次の内容でreplace.sh持って手動で入力するが、いない場合はスクリプトの動作に置き換え:私がしようとすると、それを実行すると例えば、私はスクリプト
ack-grep -a -l -i --print0 --text "$1" | xargs -0 -n 1 sed -i -e 's/$1/$2/g'
を:
置き換えます.sh something somethingnew
プロンプトはエラーなしで返されますが、ファイルは変更されていません。私は手動で入力した場合 :予想通り
ack-grep -a -l -i --print0 --text "something" | xargs -0 -n 1 sed -i -e 's/something/somethingelse/g'
ファイルが変更されます。
構文は、私が書いた他のスクリプトではうまくいくようです。私はargsか何かをエスケープすることと何かが行方不明だと思いますか?
ありがとうございます!
ルド。
ありがとうございます! :) 2倍の正解、同時に両方で、しかし、彼の最初の答えだったように、他の人に答えを与えた。ありがとう:) – Ludo