Skip to content

Instantly share code, notes, and snippets.

@alobato
Created May 25, 2010 02:07
Show Gist options
  • Save alobato/412670 to your computer and use it in GitHub Desktop.
Save alobato/412670 to your computer and use it in GitHub Desktop.
# imprime somente as linhas que se encaixam na expressão regular
# (emula o "grep")
sed '/regexp/!d'
# procura e imprime por AAA e BBB e CCC (em qualquer ordem)
sed '/AAA/!d; /BBB/!d; /CCC/!d'
# imprime somente as linhas com menos que 65 caracteres
sed '/^.\{65\}/d'
# deleta AMBOS os espaços em branco final e inicial de cada linha
sed 's/^[ \t]*//;s/[ \t]*$//'
# insere 5 espaços em branco no ínicio de cada linha (faz o offset da página)
sed 's/^/ /'
# substituir (achar e trocar) "foo" por "bar" em cada linha
sed 's/foo/bar/' # troca somente a 1a instância de uma linha
sed 's/foo/bar/4' # troca somente a 4a instância de uma linha
sed 's/foo/bar/g' # troca TODAS as instâncias de uma linha
sed 's/\(.*\)foo\(.*foo\)/\1bar\2/' # troca o 'próximo-para-último'
sed 's/\(.*\)foo/\1bar/' # troca somente a última occorrência
# substitui "foo" por "bar" SOMENTE nas linhas que contem "baz"
sed '/baz/s/foo/bar/g'
# substitui "foo" por "bar" EXCETO nas linhas que contem "baz"
sed '/baz/!s/foo/bar/g'
# troca "scarlet" ou "ruby" ou "pucy" para "red"
sed 's/scarlet/red/g;s/ruby/red/g;s/puce/red/g' # na maioria dos seds
gsed 's/scarlet\|ruby\|puce/red/g' # somente no GNU sed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment