Re: Localizar e substituir

2006-03-06 Por tôpico Eder Gobbi
Em Sex, 2006-03-03 às 10:45 -0300, Gentil de Bortoli Júnior escreveu:
 -BEGIN PGP SIGNED MESSAGE-
 Hash: SHA1
 
 Eder Gobbi wrote:
  Tem algum comando para localizar e substituir textos em arquivos?
 
 sed -i 's/texto1/texto2/g' arquivo
 
 []s
 - --
 Gentil de Bortoli Júnior
 Chave GPG: http://gentil.bortoli.com.br/gpg
 

E como eu faria para substituir toda uma linha do arquivo?
Li o man do sed e pesquisei na net, talvez por ignorancia minha, mas não
consegui.
-- 
...
[]'s

_Eder Gobbi - Woody
   ^-)MSN - edergobbi at gmail dot com
( . . _  GoogleTalk - gobbix at gmail dot com
  \ `\\   Jabber - gobbix at jabber dot com
 |   Linux User - #385577 - 
http://counter.li.org
 __/|__ UIN - 161655702   
   
Livre? É... Eu sou!!!

Se você pensa que pode, ou se pensa que não pode, de qualquer forma
você está certo! (Henry Ford)


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: Localizar e substituir

2006-03-06 Por tôpico Gentil de Bortoli Júnior
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Eder Gobbi wrote:
 Tem algum comando para localizar e substituir textos em arquivos?

 sed -i 's/texto1/texto2/g' arquivo

 E como eu faria para substituir toda uma linha do arquivo?

Explique melhor o problema. Se você quer substituir uma linha inteira,
informe a linha inteira no lugar de texto1.

Exemplo:

sed 's/Quero trocar tudo isso/Por isso/g'

[]s

- --
Gentil de Bortoli Júnior
Chave GPG: http://gentil.bortoli.com.br/gpg

There Is No Gene For The Human Spirit
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.2 (GNU/Linux)

iD8DBQFEDDg2R/xCJbtXupkRAgxeAJ9iGyzgLkfx/bE4zWm+JmUC74yHagCePQTR
AOCll30N2o/6ivTxJhdu3ys=
=VLBH
-END PGP SIGNATURE-


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: Localizar e substituir

2006-03-06 Por tôpico Eder Gobbi
Em Seg, 2006-03-06 às 10:25 -0300, Gentil de Bortoli Júnior escreveu:
 -BEGIN PGP SIGNED MESSAGE-
 Hash: SHA1
 
 Eder Gobbi wrote:
  Tem algum comando para localizar e substituir textos em arquivos?
 
  sed -i 's/texto1/texto2/g' arquivo
 
  E como eu faria para substituir toda uma linha do arquivo?
 
 Explique melhor o problema. Se você quer substituir uma linha inteira,
 informe a linha inteira no lugar de texto1.
 
 Exemplo:
 
 sed 's/Quero trocar tudo isso/Por isso/g'
 
 []s
 
 - --
 Gentil de Bortoli Júnior
 Chave GPG: http://gentil.bortoli.com.br/gpg
 
 There Is No Gene For The Human Spirit
 -BEGIN PGP SIGNATURE-
 Version: GnuPG v1.4.2 (GNU/Linux)
 
 iD8DBQFEDDg2R/xCJbtXupkRAgxeAJ9iGyzgLkfx/bE4zWm+JmUC74yHagCePQTR
 AOCll30N2o/6ivTxJhdu3ys=
 =VLBH
 -END PGP SIGNATURE-
 
 

Assim

Criei scripts para um cliente incluir ips, macs, e valor de banda para
seus clientes de wirelles. Para alterar a banda de um cliente, eu
poderia fazer assim:

sed -i 's/150Kbit/${vardown}Kbit/g' /etc/shaper/cbq-${varip}-in

Funciona, mas e se ele quiser alterar novamente?
Olha o script completo, é ridículo, mas foi o que conseguí fazer no
braço.. :c)

#!/bin/bash
# Administração de Usuários
Principal() {
echo
echo
echo ADMINISTRACAO DE USUARIOS WIRELESS
echo --
echo
echo Opcoes:
echo
echo 1 - Adicionar IP
echo 2 - Adicionar MAC
echo 3 - Controle de Banda
echo 4 - Aplicar alteracoes
echo 5 - Sair
echo Escolha a opcao desejada ; read opcao

case $opcao in
1) IP ;;
2) MAC ;;
3) CB ;;
4) APLY ;;
5) exit ;;
*) Opcao Errada! ; echo ; Principal ;;
esac
}
IP() {
  echo Digite o novo IP: ; read varip
  echo ${varip}  ip-list
  cp /etc/shaper/cbq-192.168.100.8-in /etc/shaper/cbq-${varip}-in
  cp /etc/shaper/cbq-192.168.100.8-out /etc/shaper/cbq-${varip}-out
  sed -i s/192.168.100.8/${varip}/g /etc/shaper/cbq-${varip}-in
  sed -i s/192.168.100.8/${varip}/g /etc/shaper/cbq-${varip}-out
Principal
}
MAC() {
  echo Digite o MAC do dispositivo: ; read varmac
  echo ${varmac}   /etc/mac-list
 Principal
}
CB() {
  echo IP a ser alterado: ; read varip
  echo Taxa de download: ; read txdw
  echo Taxa de upload: ; read txul
  sed -i s/RATE=150Kbit/RATE=${txdw}Kbit/g /etc/shaper/cbq-${varip}-in
  sed -i s/RATE=150Kbit/RATE=${txul}Kbit/g /etc/shaper/cbq-${varip}-out
 Principal
}
APLY() {
   sudo /etc/init.d/nat-ini
   sudo /etc/init.d/shaper restart
   echo Alterações aplicadas com sucesso!
Principal
}
Principal

-- 
...
[]'s

_Eder Gobbi - Woody
   ^-)MSN - edergobbi at gmail dot com
( . . _  GoogleTalk - gobbix at gmail dot com
  \ `\\   Jabber - gobbix at jabber dot com
 |   Linux User - #385577 - 
http://counter.li.org
 __/|__ UIN - 161655702   
   
Livre? É... Eu sou!!!

Se você pensa que pode, ou se pensa que não pode, de qualquer forma
você está certo! (Henry Ford)


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: Localizar e substituir

2006-03-06 Por tôpico Gentil de Bortoli Júnior
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

 Explique melhor o problema. Se você quer substituir uma linha inteira,
 informe a linha inteira no lugar de texto1.
 
 Exemplo:
 
 sed 's/Quero trocar tudo isso/Por isso/g'

 sed -i 's/150Kbit/${vardown}Kbit/g' /etc/shaper/cbq-${varip}-in

 Funciona, mas e se ele quiser alterar novamente?

 CB() {
   echo IP a ser alterado: ; read varip
   echo Taxa de download: ; read txdw
   echo Taxa de upload: ; read txul
   sed -i s/RATE=150Kbit/RATE=${txdw}Kbit/g /etc/shaper/cbq-${varip}-in
   sed -i s/RATE=150Kbit/RATE=${txul}Kbit/g /etc/shaper/cbq-${varip}-out

Bom, não sei como é a estrutura dos arquivos com os quais você está
trabalhando. Mas, nesse caso, creio que a melhor saída seja sua função
descobrir esse valor e então utilizá-lo com o sed.

A base do seu script está legal. Mas ainda pode melhorar bastante.
Nesse caso, o assunto já fica muito OT aqui.

Recomendo que você dê uma olhada na lista [1]Shell-Script. Poste seu
script lá e solicite sugestões. Normalmente o pessoal ajuda bastante.

[]s

1. http://br.groups.yahoo.com/group/shell-script/

- --
Gentil de Bortoli Júnior
Chave GPG: http://gentil.bortoli.com.br/gpg

There Is No Gene For The Human Spirit
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.2 (GNU/Linux)

iD8DBQFEDElKR/xCJbtXupkRAiXXAJwLAzO3SyuSLdUw7jJ4Ny32CqEAegCfctxS
oNDQXa4EdmwT5IItrLEj73Q=
=j9CT
-END PGP SIGNATURE-


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: Localizar e substituir

2006-03-06 Por tôpico Eder Gobbi
Em Seg, 2006-03-06 às 11:38 -0300, Gentil de Bortoli Júnior escreveu:
 -BEGIN PGP SIGNED MESSAGE-
 Hash: SHA1
 
  Explique melhor o problema. Se você quer substituir uma linha inteira,
  informe a linha inteira no lugar de texto1.
  
  Exemplo:
  
  sed 's/Quero trocar tudo isso/Por isso/g'
 
  sed -i 's/150Kbit/${vardown}Kbit/g' /etc/shaper/cbq-${varip}-in
 
  Funciona, mas e se ele quiser alterar novamente?
 
  CB() {
echo IP a ser alterado: ; read varip
echo Taxa de download: ; read txdw
echo Taxa de upload: ; read txul
sed -i s/RATE=150Kbit/RATE=${txdw}Kbit/g /etc/shaper/cbq-${varip}-in
sed -i s/RATE=150Kbit/RATE=${txul}Kbit/g /etc/shaper/cbq-${varip}-out
 
 Bom, não sei como é a estrutura dos arquivos com os quais você está
 trabalhando. Mas, nesse caso, creio que a melhor saída seja sua função
 descobrir esse valor e então utilizá-lo com o sed.
 
 A base do seu script está legal. Mas ainda pode melhorar bastante.
 Nesse caso, o assunto já fica muito OT aqui.
 
 Recomendo que você dê uma olhada na lista [1]Shell-Script. Poste seu
 script lá e solicite sugestões. Normalmente o pessoal ajuda bastante.
 
 []s
 
 1. http://br.groups.yahoo.com/group/shell-script/
 
 - --
 Gentil de Bortoli Júnior
 Chave GPG: http://gentil.bortoli.com.br/gpg
 
 There Is No Gene For The Human Spirit
 -BEGIN PGP SIGNATURE-
 Version: GnuPG v1.4.2 (GNU/Linux)
 
 iD8DBQFEDElKR/xCJbtXupkRAiXXAJwLAzO3SyuSLdUw7jJ4Ny32CqEAegCfctxS
 oNDQXa4EdmwT5IItrLEj73Q=
 =j9CT
 -END PGP SIGNATURE-
 
 

Já fiz isso, mas o fluxo de perguntas e respostas tá muito curto.
Mesmo assim obrigado
-- 
...
[]'s

_Eder Gobbi - Woody
   ^-)MSN - edergobbi at gmail dot com
( . . _  GoogleTalk - gobbix at gmail dot com
  \ `\\   Jabber - gobbix at jabber dot com
 |   Linux User - #385577 - 
http://counter.li.org
 __/|__ UIN - 161655702   
   
Livre? É... Eu sou!!!

Se você pensa que pode, ou se pensa que não pode, de qualquer forma
você está certo! (Henry Ford)


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: Localizar e substituir

2006-03-03 Por tôpico Gentil de Bortoli Júnior
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Eder Gobbi wrote:
 Tem algum comando para localizar e substituir textos em arquivos?

sed -i 's/texto1/texto2/g' arquivo

[]s
- --
Gentil de Bortoli Júnior
Chave GPG: http://gentil.bortoli.com.br/gpg

There Is No Gene For The Human Spirit
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.2 (GNU/Linux)

iD8DBQFECEhgR/xCJbtXupkRArP3AJ9OA6Xm6MYrJhRLLleTLAGAHvGsbACfeNl2
pVTl4d+BXtt+LGckbhcOrLM=
=xhWX
-END PGP SIGNATURE-


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: Localizar e substituir

2006-03-03 Por tôpico Eder Gobbi
Em Sex, 2006-03-03 às 10:45 -0300, Gentil de Bortoli Júnior escreveu:
 -BEGIN PGP SIGNED MESSAGE-
 Hash: SHA1
 
 Eder Gobbi wrote:
  Tem algum comando para localizar e substituir textos em arquivos?
 
 sed -i 's/texto1/texto2/g' arquivo
 
 []s
 - --
 Gentil de Bortoli Júnior
 Chave GPG: http://gentil.bortoli.com.br/gpg
 
 There Is No Gene For The Human Spirit
 -BEGIN PGP SIGNATURE-
 Version: GnuPG v1.4.2 (GNU/Linux)
 
 iD8DBQFECEhgR/xCJbtXupkRArP3AJ9OA6Xm6MYrJhRLLleTLAGAHvGsbACfeNl2
 pVTl4d+BXtt+LGckbhcOrLM=
 =xhWX
 -END PGP SIGNATURE-
 
 

Boa.. Funcionou.. 

Tnx
-- 
...
[]'s

_Eder Gobbi - Woody
   ^-)MSN - edergobbi at gmail dot com
( . . _  GoogleTalk - gobbix at gmail dot com
  \ `\\   Jabber - gobbix at jabber dot com
 |   Linux User - #385577 - 
http://counter.li.org
 __/|__ UIN - 161655702   
   
Livre? É... Eu sou!!!

Se você pensa que pode, ou se pensa que não pode, de qualquer forma
você está certo! (Henry Ford)


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: Localizar e substituir

2006-03-03 Por tôpico Luciano Zuppi

no vim .. use
:%s/texto1/texto2/g
acho que isso pode ajudar ...


Eder Gobbi wrote:


Bom dia lista

Tem algum comando para localizar e substituir textos em arquivos?

Exemplo:

# localizar texto1 no_arquivo_01 substituir texto2


 




--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: Localizar e substituir

2006-03-03 Por tôpico Fred Maranhão

--- Luciano Zuppi [EMAIL PROTECTED] escreveu:

 no vim .. use
 :%s/texto1/texto2/g
 acho que isso pode ajudar ...

E no emacs, use o comando query-replace, para
substituições simples, e query-replace-regexp para
substituições mais sofisticadas. Para saber mais, veja
a seção search do info do emacs.

 
 
 Eder Gobbi wrote:
 
 Bom dia lista
 
 Tem algum comando para localizar e substituir
 textos em arquivos?
 
 Exemplo:
 
 # localizar texto1 no_arquivo_01 substituir texto2
 
 
   
 
 
 
 -- 
 To UNSUBSCRIBE, email to
 [EMAIL PROTECTED]
 with a subject of unsubscribe. Trouble? Contact
 [EMAIL PROTECTED]
 
 








___ 
Yahoo! doce lar. Faça do Yahoo! sua homepage. 
http://br.yahoo.com/homepageset.html 


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]