2013-09-30 3 views
0

Я пытаюсь заменить отдельные строки из текстового файлаСЭД для замены строки со специальными символами

Вход: Компьютерная периферия Интернет-технологии C/C++

Выход: Магазины Generic Программирование

Когда я попробовать использовать follwing СЕПГ:

refcat="Computer Peripherals" 
cat1="Shopping" 
echo $list | sed -e '[email protected][email protected][email protected]' 

я получаю следующий результат:

Компьютер Периферийные Интернет Технология

я получаю выход на другую линию. Может ли кто-нибудь помочь мне с этим? Мои Входные и выходные значения могут иметь специальные символы в них (за исключением «|» или «@»)

ответ

1

Для оболочки расширить переменные, вам нужно двойные кавычки, я думаю

echo $list | sed -e "[email protected][email protected][email protected]" 

мой пример

echo Computer Peripherals Internet Technology C/C++ | sed -e "[email protected]${refcat}@${cat1}@g" 

Shopping Internet Technology C/C++ 
+0

Спасибо, но теперь мой результат - покупка, а затем покупка в новой строке. – rahul

+0

обновил мой ответ. Я точно не знаю, что такое '$ list'. –

+0

Извините, что .. $ list - это строка ввода. – rahul

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