você está aqui: Home  → Arquivo de Mensagens

SED - Mais alguns comandos úteis

Colaboração: Rubens Queiroz de Almeida

Data de Publicação: 29 de Abril de 1999

O Arnaldo Mandel, da USP, me enviou ontem um lembrete muito importante:


Nunca redirecione a saída para o próprio arquivo. Por exemplo,

  sed 1d teste > teste

apagaria o conteúdo do arquivo teste.

Para usar o sed na edição de um arquivo, é preciso gravar um temporário e depois jogar em cima do original:

  sed 1d teste > teste.out  && mv teste.out teste

Eu também cometi um erro chamando o SED de "String Editor". O nome correto é "Stream Editor".

Gostaria de agradecer ao Arnaldo por suas correções e sugestões.

A mensagem de hoje também aborda o SED:


Tomando ainda como exemplo o arquivo da mensagem de ontem, se quisermos inserir um espaço em branco nas linhas 3 e 4 basta executar o comando:

  sed "3,4s/^/ /" teste

e obtemos o resultado

  1
  2
   3
   4 
  5

Se quisermos substituir os caracteres nas linhas 1 e 2 pela letra x:

  sed "1,2s/^./x/" teste

temos então

  x
  x
  3
  4
  5

Podemos também inserir um caracter nesta mesma posição:

  sed "1,2s/^/x/" teste
  x1
  x2
  3
  4
  5

Para inserir na última posição de cada linha o caracter

  sed "s/$/%/" teste
  1%
  2%
  3%
  4%
  5%

Não esquecer nunca que para salvar o resultado do trabalho devemos fazer o redirecionamento para um arquivo.



 

 

Veja a relação completa dos artigos de Rubens Queiroz de Almeida

Opinião dos Leitores

Seja o primeiro a comentar este artigo
*Nome:
Email:
Me notifique sobre novos comentários nessa página
Oculte meu email
*Texto:
 
  Para publicar seu comentário, digite o código contido na imagem acima
 


Powered by Scriptsmill Comments Script