[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RES: RES: [shell-script] sed ou grep?
From: |
Julio Cezar Neves - DISB.O |
Subject: |
RES: RES: [shell-script] sed ou grep? |
Date: |
Fri, 21 Jul 2000 11:21:08 -0300 |
> ----- Mensagem original -----
> De: # aurelio marinho jargas [SMTP:address@hidden]
> Enviada em: quinta-feira, 20 de julho de 2000 22:39
> Para: address@hidden
> Assunto: Re: RES: [shell-script] sed ou grep?
>
> @ 20/7, Julio Cezar Neves - DISB.O:
> > Vc pode fazer isso por sed, grep (com a opção -v) ou preferencialmente
> por
> > awk. Basta ter uma característica que seja única na linha que vc deseja
> > deletar e montar uma expressão regular. P.ex. digamos q vc queira
> deletar
> > todas as linhas começadas por um comentário (#) do .xinitrc. Usando o
> grep e
> > o sed, como vc sugeriu, ficaria:
> >
> > sed '/^#/d' .xinitrc > /tmp/xinitrc ; mv /tmp/xinitrc .xinitrc
> > ou
> > grep -v '^#' .xinitrc > /tmp/xinitrc ; mv /tmp/xinitrc .xinitrc
>
> com este mv você perde todas as propriedades do arquivo original
> (permissões, possíveis links)
>
por tratar-se do .xinitrc no exemplo, não creio q isto vá ocorrer.
De qq forma esta foi uma simplificação da resposta. Creio q pude demonstrar
o uso dos comandos solicitados.
> > O awk foi escrito para substituir o grep e o sed, portanto, normalmente,
> seu
> > uso nestes casos é + indicado.
>
> você tem certeza?
> awk, sed e grep são coisas totalmente diferentes.
> ambos manipulam textos, mas
>
> grep: procura padrões num texto
> sed : edita um texto de maneira não interativa
> awk : linguagem de programação, com variáveis e estruturas de
> fluxo, direcionada à manipulação de texto
cada um serve praum propósito diferente...
Certeza? Como se pode ter certeza do que vai na cabeça dos
desenvolvedores do awk? Apenas citei o que li nos meus estudos sobre a
linguagem. Abaixo tradução literal de um manual de awk da Berkley University
(de onde saiu o sabor BSD do UNIX):
awk é um anacrônimo formado pelos nomes dos três programadores que
escreveram o comando (Alfred V. Aho, Peter J. Weinberger, e Brian W.
Kernighan ), com a finalidade de englobar as funções da família grep (grep,
fgrep e egrep) e do sed.
Ou seja, o awk pretende ser a soma das outras duas e não cada uma de
"per si", como talvez o meu texto anterior tenha de deixado entender.
Suas observações foram muito boas.
[]s, Julio
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- RES: RES: [shell-script] sed ou grep?,
Julio Cezar Neves - DISB.O <=