2013-11-29 4 views
1

У меня есть сценарий под названием "test.sh"

#!/bin/bash 
echo "sed -i '/$1/c\$2' $3" 

Бег как: ./test.sh "This line is removed." "some text here" out.txt. Я хочу, чтобы это было напечатано точно:

sed -i '/This line is removed./c\some text here' out.txt 

Выход печати как:

sed -i '/This line is removed./c$2' out.txt 

Проблема есть с \$ она печати $ не позволяет содержание $2. Как это сделать?

ответ

2

Используйте эту строку в сценарии с двойной слэш:

#!/bin/bash 
echo "sed -i '/$1/c\\$2' $3" 
2

попробовать это

echo "sed -i '/$1/c\\$2' $3" 
+0

как раз 6 секунд поздно :) – anubhava

+0

да !!!!!!! :) –

Смежные вопросы