Resposta muito tarde. No entanto, isso pode ajudar outras pessoas com um problema / pergunta semelhante.
Eu recomendaria criar e aplicar um patch. Um bom exemplo pode ser encontrado
aqui .
Por exemplo, supondo que um arquivo new.txt contenha alterações que você deseja aplicar ao old.txt. Você pode executar os comandos em um terminal ou criando e executando um patch_file.sh.
Linha de comando: abra um terminal e copie e execute as linhas abaixo (altere os nomes dos arquivos conforme necessário):
diff old.txt new.txt > patch.patch # to create the patch
patch old.txt -i patch.patch -o patched_old.text # to apply patch
Script: usando uma abordagem de arquivo .sh. Em um terminal (teclado: ctrl + alt + t:
gedit patch_file.sh
Copie e cole os comandos que iriam no terminal, para o arquivo .sh e abaixo do cabeçalho, como mostrado abaixo (gedit).
#!/bin/sh
diff old.txt new.txt > patch.patch # to create the patch
patch old.txt -i patch.patch -o patched_old.text # to apply patch
Torne o script executável (terminal):
chmod +x patch_file.sh
Execute o script (terminal):
./patch_file.sh # may require sudo access depending on the directory affected
Se você deseja editar um arquivo, use um editor de arquivos, existem editores de arquivos baseados em comandos que podem ser usados em scripts, como ex ou ed .
fonte
Você está procurando por sed ou awk. Acho sed mais simples e awk mais poderoso.
Aqui está um exemplo de outra pergunta .
Isso significa:
/usr/share/applications/defaults.list
gedit.desktop
yournew.desktop
-i
fonte
Dependendo do que você precisa editar, se você estiver familiarizado
vi
,ed
pode ser útil.fonte