existem muitas formas, por exemplo

sed '/expressão regular/ s/o que vc quer alterar/alteração que vc
quer/g' arquivo > arquivo_novo

Se vc tem uma linha assim:
a;00:00:00:00:00:00;10.1.1.2;Bruno

e gostaria de alterar para
a;00:00:00:00:00:00;10.1.1.2;Alfredo

Podes fazer assim
sed '/10.1.1.2/ s/Bruno/Alfredo/g' arquivo

Só precisas colocar uma expressão regular para pegar qualquer IP.

Entretanto não sei como vc quer alterar as linhas que contenham tal
IP. Uma forma é assim, se vc quer alterações mais profundas deve
estudar que ferramenta vc quer usar. Pode ser SED, AWK, ou alguma
combinação de cut, grep, echo, paste,...

Veja um exemplo com AWK
awk -F';' '/10.1.1.2/{$4="Alfredo" ; print $0}' arquivo
a 00:00:00:00:00:00 10.1.1.2 Alfredo

$ awk -F';' '/10.1.1.2/{$4="Alfredo" ; print $0}' arquivo | tr ' ' ';'
a;00:00:00:00:00:00;10.1.1.2;Alfredo

On 4/20/06, Good_speed - Erik P. ghijs <[EMAIL PROTECTED]> wrote:
> Oi Pessoal,
> Estou com uma duvida cruel, com respeito a fazer uma alteração em um
> campo especifico no Shell script, vou mostra o exemplo:
> /etc/maclist
> a;00:00:00:00:00:00;10.1.1.2;Bruno
> Quero que o script altere so a linha onde esta o ip, alguém poderia
> me mostra a luz?

--
Tiago B Peczenyj
Linux User #405772

# cd /pub
# more beer


---------------------------------------------------------------------
Esta lista não admite a abordagem de outras liguagens de programação, como perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio aviso.
---------------------------------------------------------------------
Sair da lista: [EMAIL PROTECTED]
---------------------------------------------------------------------
Esta lista é moderada de acordo com o previsto em http://www.listas-discussao.cjb.net
---------------------------------------------------------------------
Servidor Newsgroup da lista: news.gmane.org
Grupo: gmane.org.user-groups.programming.shell.brazil




Yahoo! Grupos, um serviço oferecido por:
PUBLICIDADE


Links do Yahoo! Grupos

Responder a