sed -i 's/command=/&sudo /' file
explicação: examinando o arquivo linha-a-linha, substitua o texto "command=" por "command = sudo". O &
na string substituta será o que for encontrado no lado esquerdo.
o que estou tentando fazer é inserir o comando sudo
em um arquivo com echo
ou algo semelhante, mas não na primeira linha, mas em outra linha após o texto.
ie. Eu tenho este texto
line[4]command=sh -c "service apache2 start"
e eu quero que o sudo seja depois de "command="
como fazer isso com echo
ou qualquer outra coisa?
Apenas para completar, observe que normalmente há vários editores de texto disponíveis em um sistema Unix ou Linux, além do editor de fluxo sed
. Há ex
, por exemplo:
ex file << END
%s/^command=/&sudo /
w
END
Ou até ed
(esse é o sabor do GNU):
ed file << END
1,$s/^command=/&sudo /
w
END
Tags command-line bash echo linux