shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Modificando a linha sem modificar sua ardem no arquiv


From: Sebastiao Gonella
Subject: Re: [shell-script] Modificando a linha sem modificar sua ardem no arquivo
Date: Mon, 21 May 2007 16:22:29 -0300

Pesso$all,

o sed consegue escrever direto no arquivo tb?? tipo, se uso o comando sed
'1s/^\(.\{8\}\)lindo/\1feio/' arquivo.txt ele me retorna o conteúdo do
arquivo com a linha e coluna modificado, mas o arquivo que apontei continua
a mesma coisa.. pergunto isso pq nao gostaria de ficar jogando em outro
arquivo.... se direcionar a saida do sed ao mesmo arquivo, tipo sed
'1s/^\(.\{8\}\)lindo/\1feio/' arquivo.txt > arquivo.txt, tb nao funciona.
Alguma ideia?

Obrigado.

Em 18/05/07, Sebastiao Gonella <address@hidden> escreveu:
>
> Agora entendi Flavio, joia mesmo. Acho q isso vai resolver meu
> problema....
> Obrigado pela ajuda Julio, Flavio e lista.
>
> Abraços
> Gonella
>
> Em 18/05/07, Flavio Junior <address@hidden> escreveu:
> >
> >   vamos complicar/explicar as coisas...
> > [root@gandalf root]# for ((i=0;i<10;i++)); do echo "$i -
> > abcdefghijklmnopqrstuvxz"; done
> > 0 - abcdefghijklmnopqrstuvxz
> > 1 - abcdefghijklmnopqrstuvxz
> > 2 - abcdefghijklmnopqrstuvxz
> > 3 - abcdefghijklmnopqrstuvxz
> > 4 - abcdefghijklmnopqrstuvxz
> > 5 - abcdefghijklmnopqrstuvxz
> > 6 - abcdefghijklmnopqrstuvxz
> > 7 - abcdefghijklmnopqrstuvxz
> > 8 - abcdefghijklmnopqrstuvxz
> > 9 - abcdefghijklmnopqrstuvxz
> > [root@gandalf root]# for ((i=0;i<10;i++)); do echo "$i -
> > abcdefghijklmnopqrstuvxz"; done > txt
> > [root@gandalf root]# sed -n '5p' txt
> > 4 - abcdefghijklmnopqrstuvxz
> > [root@gandalf root]# sed -n '5p' txt | cut -c10-15
> > fghijk
> > [root@gandalf root]# if [ $(sed -n '5p' txt | cut -c10-15) == fghijk ];
> > then
> > echo "eh o que eu quero, faco o que?"; else echo "nao eh o que eu quero,
> > nao
> > faco nada entao, nem precisava desse else.. duh"; fi
> > eh o que eu quero, faco o que?
> > [root@gandalf root]# if [ $(sed -n '5p' txt | cut -c10-15) == fghYYYYjk
> > ];
> > then echo "eh o que eu quero, faco o que?"; else echo "nao eh o que eu
> > quero, nao faco nada entao, nem precisava desse else.. duh"; fi
> > nao eh o que eu quero, nao faco nada entao, nem precisava desse else..
> > duh
> > [root@gandalf root]#
> >
> > Flavio do Carmo Junior
> >
> > On 5/18/07, Sebastiao Gonella <address@hidden<segonella%40gmail.com>>
> > wrote:
> > >
> > > Explicando melhor Julio...
> > >
> > > Na verdade eu tenho que pegar um campo nesta linha, campo esse número,
> > > tratar e gravar novamente na linha. Como a linha conta com varios
> > valores,
> > > numeros, etc, eh possivel que quando use o comando "sed
> > > 's/\(.\{9\}\)CadeiaASerTrocada/\1NovaCadeia/' arquivo" ele ache outros
> > > "CadeiaASerTrocada" e modifique mais de um campo na linha ou ateh
> > mesmo
> > > mais
> > > de uma linha no arquivo. Eu tenho que garantir que estou modificando
> > um
> > > pedaço pre-definido na coluna (tipo 12-20) e tambem da linha, isso
> > para
> > > garantir a integridade do arquivo.
> > >
> > > Obrigado.
> > >
> > > Em 18/05/07, Julio C. Neves <address@hidden<julio.neves%40gmail.com>
> > <julio.neves% 40gmail.com>>
> > > escreveu:
> > > >
> > > > Achei a sua descrição um tanto enrolada, porém deve ser o seguinte:
> > > >
> > > > sed 's/\(.\{9\}\)CadeiaASerTrocada/\1NovaCadeia/' arquivo
> > > >
> > > > Abraços,
> > > > Julio
> > > > :wq
> > > >
> > > > Em 18/05/07, segonella <address@hidden 
> > > > <segonella%40gmail.com><segonella%40gmail.com><segonella%40gmail.com
> > >>
> > > > escreveu:
> > > > >
> > > > > Pessoal,
> > > > > Como faço para modificar uma determinada linha, com base no numero
> > da
> > > > > coluna (tipo C 10-22), quando encontrar uma determinada string??
> > > > > quando encontrado, preciso modificar a string encontrada na linha
> > sem
> > > > > modificar o número da linha.
> > > > > Obrigado.
> > > > > Gonella
> > > > >
> > > > >
> > > > >
> > > >
> > > > --
> > > > Abraços,
> > > > Julio
> > > > http://www.julioneves.com - Um livro sobre Bash completo e on-line
> > > > :wq
> > > >
> > > > [As partes desta mensagem que não continham texto foram removidas]
> > > >
> > > >
> > > >
> > >
> > > --
> > > --------------------------------------
> > > Sebastião M. P. Gonella
> > > Celular: 61-84021512
> > > address@hidden <segonella%40gmail.com> <segonella%40gmail.com>
> > > --------------------------------------
> >
> > >
> > > [As partes desta mensagem que não continham texto foram removidas]
> > >
> > >
> > >
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >  
> >
>
>
>
> --
> --------------------------------------
> Sebastião M. P. Gonella
> Celular: 61-84021512
> address@hidden
> --------------------------------------




-- 
--------------------------------------
Sebastião M. P. Gonella
Celular: 61-84021512
address@hidden
--------------------------------------


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

[Prev in Thread] Current Thread [Next in Thread]