У меня есть Баш скрипт, 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'
Файлы переодеться, как и ожидалось.
Синтаксис Ths $ 1, похоже, работает для других сценариев, которые я написал. Я предполагаю, что я упустил что-то, что нужно сделать, чтобы ускользнуть от аргов или чего-то еще?
Спасибо!
Ludo.
Спасибо! :) 2 х правильных ответов, оба в то же время, но дал ответ другому парню, поскольку это был его первый ответ. Благодаря :) – Ludo