você está tão perto: apenas solte o .
Você está dizendo que começa com algum caractere, então //…
sed -i "1s/\/\/-----------/& %TAG/" FILE.txt
ou altere o delimitador para reduzir o escape.
sed -i "1s#//-----------#& %TAG#" FILE.txt
A ideia é:
se a primeira linha do arquivo FILE.txt começar com
//-----------
substitua por
//----------- %TAG
Para fazer isso, usei o seguinte comando
sed -i "1s/.\/\/-----------/& %TAG/" FILE.txt
Mas não funcionou.
Alguma sugestão?
você está tão perto: apenas solte o .
Você está dizendo que começa com algum caractere, então //…
sed -i "1s/\/\/-----------/& %TAG/" FILE.txt
ou altere o delimitador para reduzir o escape.
sed -i "1s#//-----------#& %TAG#" FILE.txt
Você está perto. O ponto no início irá corresponder a qualquer caractere, que parece que não é necessário. E para fazer a string corresponder apenas no início da linha, o regex deve começar com ^
:
sed -i "1s#^//-----------#& %TAG#" file.txt
Usar um #
como o delimitador de comando s
simplifica a retrocução.
Tags text-processing sed