O SED é um editor de texto para usarmos em scripts de configuração para
automatizarmos algumas tarefas.
Esse artigo não é de minha autoria e o link do conteúdo original está no
final.
1 - Troca todas as palavras em um arquivo por outra
sed -i
's/palavra/outra/' arquivo.txt
2 - Imprime só a nona linha
sed -n '9p'
arquivo.txt
3 - Imprime da sexta linha até a nona linha
sed -n '6,9p'
arquivo.txt
4 - Deleta todas as linhas que contém a palavra desejada no arquivo
sed -i '/palavra_desejada/d'
arquivo.txt
5 - Coloca uma palavra no INÍCIO de cada linha
sed 's/^/palavra/'
arquivo.txt
6 - Coloca uma palavra no final de cada linha
sed 's/$/palavra/'
arquivo.txt
7 - Imprime só as linhas que COMEÇAM com a string ‘http’
sed -n '/^http/p'
arquivo.txt
8 - Deleta só as linhas que COMEÇAM com a string ‘http’
sed -n '/^http/d'
arquivo.txt
9 - Troca TODAS ocorrências da palavra “marcos”, “eric”, “camila” pela palavra “pinguim”
sed
's/marcos\|eric\|camila/pinguim/g' arquivo.txt
10 - Troca tudo que estiver ENTRE as palavras “Marcos” e “Eric” pela palavra “eles”, exemplo, o texto é:
“No sábado Marcos saiu de pra brincar de bicicleta com o Eric, mas não
ficaram até tarde.” e ficará assim: “No sábado eles, mas não ficaram até
tarde.”
sed
's/Marcos.*Eric/eles/' arquivo.txt
11 - Deleta linha em branco e altera o arquivo
sed -i '/^$/d'
arquivo.txt
12 - Substitui “foo” por “bar” somente as linhas que contém “plop”
sed '/plop/
s/foo/bar/g' arquivo.txt
13 - Substitui “foo” por “bar” exceto as linhas que contém “plop”
sed '/plop/!
s/foo/bar/g' arquivo.txt
14 - Insere da Linha 2 a linha 7 o “#” no início de cada linha
sed '2,7s/^/#/'
arquivo.txt
15 - Insere a palavra ‘NEW’ no início de cada linha, da linha 21 até a linha 28:
sed -i '21,28s/^/NEW/'
arquivo.txt
16 - Troca tudo entre as tags “<” e “>” pela palavra “CODIGO”:
sed
's/<[^>]*>/CODIGO/g' arquivo.txt
17 - Imprime somente a primeira ocorrência da linha com determinada palavra:
sed -n '/dia/{p;q;}'
arquivo.txt
18 - Inclue texto no final da linha 9:
sed '9s/$/final da
linha/' arquivo.txt
19 - Coloca todas as linhas em uma só:
sed
':a;$!N;s/\n//;ta;' arquivo.txt
20 - Substitui a palavra “BELEZA” por “SIM” somente entre determinadas
linhas:
sed
'3,6s/BELEZA/SIM/' arquivo.txt
21 - Apaga o que está entre a palavra “falou” e “segundo” (
delimitadores )
sed '/segundo/{/falou/{s/segundo.*falou//;t};:a;/falou/!{N;s/\n//;ta;};s/segundo.*falou/\n/;}'
arquivo.txt
22 - Retira comandos HTML (tudo entre < e > )
sed
's/<[^>]*>//g' arquivo.txt
23 - Apaga o 1° caracter da frase
sed 's/.//'
arquivo.txt
24 - Apaga o 4° caractere da frase
sed 's/.//4'
arquivo.txt
25 - Apaga os 4 primeiros caracteres
sed 's/.\{4\}//'
arquivo.txt
26 - Apaga no mínimo 4 caracteres
sed 's/.\{4,\}//'
arquivo.txt
27 - Apaga de 2 a 4 caracteres (o máx. que tiver)
sed 's/.\{2,4\}//'
arquivo.txt
28 - Exemplos de intervalo
echo
"aáeéiíoóuú" | sed "s/[a-u]//g"
saída: áéíóú
echo
"aáeéiíoóuú" | sed "s/[á-ú]//g"
saída: aeiou
29 - Transforma texto (URL) em tags HTML de links.
Era : http://www.com
Fica: <a href=”http://www.com”>http://www.com</a>
sed
's_\<\(ht\|f\)tp://[^ ]*_<a href="&">&</a>_'
arquivo.txt
O link abaixo ainda traz o uso de REGEX:
Nenhum comentário:
Postar um comentário