Se você precisar modificar o conteúdo dos arquivos instantaneamente, poderá usar o sed -e 's/your/expression/g' -i filename
. Você pode adicionar um -i.bak
para fazer o backup do arquivo original antes que qualquer alteração ocorra.
Adicionando, esse sed
é um editor de fluxo e você deve usar ed
ou ex
.
Exemplo de atualização:
[val0x00ff@localhost dir1]$ ls
file
[val0x00ff@localhost dir1]$ cat file
test
anothertest
hangethisLine/g
[val0x00ff@localhost dir1]$ sed -i.bak 's/test/substitute_to_this/g' file
[val0x00ff@localhost dir1]$ ls -l
total 8
-rw-rw-r-- 1 val0x00ff val0x00ff 62 Aug 28 14:59 file
-rw-rw-r-- 1 val0x00ff val0x00ff 34 Aug 28 14:58 file.bak
[val0x00ff@localhost dir1]$ cat file
substitute_to_this
anothersubstitute_to_this
hangethisLine/g
[val0x00ff@localhost dir1]$ cat file.bak
test
anothertest
hangethisLine/g
Veja como -i.bak
cria um arquivo de backup automaticamente para nos proteger contra a substituição do arquivo por acidente.
Veja lin link para exemplos usando o editor ed
.