O poder do SED

Nesta pequena lição sobre o amado comando SED vamos usar como base
uma dica passada pelo Andre Noel sobre como consertar os atalhos do mouse
e do terminal.

Dica 1: O sed pode editar direto o arquivo com o parâmetro '-i'

sed -i

Dica 2: O sed pode executar uma ação mediante uma condição

sed -i '/^casa/ s/grande/pequena/g' arquivo.txt

No comando acima a condição é que a linha comece com a palavra 'casa'
e a substituição (que é nossa ação) manda substituir uma coisa totalmente
diversa de casa, mas 'casa' foi a condição sacou?

Tomando como base estas duas dicas + a dica do Andre Noel experimentemos
o comando que segue:

sed -i '/^X-Ubuntu-Gettext-Domain=gnome-terminal/ s/^/#/g' \
/usr/share/applications/gnome-terminal.desktop

Ao invés de casa o padrão
/^X-Ubuntu-Gettext-Domain=gnome-terminal/
Ao invés de 'grande' indicamos a substituição de um começo de linha '^'
por um comentário no arquivo /usr/share/applications/gnome-terminal.desktop

Agora só falta o mouse que segue a mesma lógica.

sed -i '/^X-Ubuntu-Gettext-Domain=gnome-control-center-2.0/ s/^/#/g' \
/usr/share/applications/gnome-settings-mouse.desktop

Um brinde:

# Parando os consoles de 3 a 6 e o control-alt-delete
sed -i '6,7s/^start/stop/g' /etc/event.d/tty[3-6]
sed -i '/shutdown/ s/^/#/g' /etc/event.d/control-alt-delete


#Resolvendo problema do navegador offline do firefox
# referência http://andregondim.eti.br/?p=574
# fonte: http://andregondim.eti.br/?p=555

sed -i.backup ‘/^allow send_interface=”org.freedesktop.NetworkManager/ s/allow/deny/g’ \
/etc/dbus-1/system.d/NetworkManager.conf

# resolvendo problema no aptitude

wget http://launchpadlibrarian.net/19491146/aptitude-defaults.pt_BR -O /usr/share/aptitude/aptitude-defaults.pt_BR



Gostaria de deixar aqui um agradecimento especial ao Aurélio Marinho Jargas
que através de seus manuais de Expressões Regulares e do próprio SED me deram
a condição de lhes passar agora esta dica.

Quase esquecia de mandar o link do SED How To feito pelo Aurélio:
http://aurelio.net/sed/sed-HOWTO/index.html

Um comentário:

  1. Very good...

    Estou com uma máquina recém instalada e vou testar.

    Abraços.

    ResponderExcluir

Insira seu comentário - O mesmo será submetido à aprovação!

linux-cookbook

Grupos do Google
Participe do grupo linux-cookbook
E-mail:
Visitar este grupo