Я хочу, чтобы заменитьЗаменить шаблон в существующей линии с использованием СЭД
/fdasatavol/ankit
в
/fdasatavol_sata/ankit
Может кто-нибудь помочь мне в этом?
Я хочу, чтобы заменитьЗаменить шаблон в существующей линии с использованием СЭД
/fdasatavol/ankit
в
/fdasatavol_sata/ankit
Может кто-нибудь помочь мне в этом?
писать в новый файл (без изменения file1):
sed 's/fdasatavol/fdasatavol_sata/g' file1 > file2
или заменить в исходном файле:
sed -i 's/fdasatavol/fdasatavol_sata/g' file1
это ударит по всем случаям fdasatavol, которые могут включать в себя других, не желающих, которые имеют другой контекст. – UpAndAdam
Это заменит каждое вхождение fdasatavol
с fdasatavol_sata
:
sed 's/fdasatavol/&_sata/g'
Если у вашего ввода есть fdasatavol
, которые не являются в /fdasatavol/ankit
и вы не хотите, чтобы заменить их потом использовать:
sed '[email protected]/fdasatavol/[email protected]/fdastatavol_sata/[email protected]'
Примечание: Вы можете использовать любой символ, как СЕПГ delimilter для Aviod путаницы с parrtern contiaing /
. sed
печатает до stdout
по умолчанию, если вы довольны изменениями, произведенными sed
, вы можете использовать опцию -i
для хранения обратно к файлу.
sed -i 's/fdasatavol/&_stat/g' file
Опоры (и +1) для указания более безопасного использования с использованием всего шаблона, чтобы избежать изменения других частей файла – UpAndAdam
Основные «эхо»/fdasatavol/ankit »| sed 's/fdasatavol/fdasatavol_sata /' 'будет работать, но мне кажется, что вы хотите нечто более общее. Покажите нам, что вы пробовали. – fedorqui