The UNIX and Linux Forums  

Go Back   O UNIX e Linux Forum > Top Fóruns > UNIX para Dummies Perguntas & Respostas
.
google unix.com



UNIX para Dummies Perguntas & Respostas Se não tiver certeza de onde se pode postar uma pergunta Unix ou Linux, postá-lo aqui. Todos os UNIX e Linux novatos bem vindos!

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
Linkback Thread Tools Pesquisar este Thread Rate Thread Display Modes
  #1 (permalink)  
Old 12-08-2004
yeshwants yeshwants is offline
Usuário
  
 

Join Data: dezembro 2004
Posts: 2
sed ajudar

Eu tenho que procurar e substituir uma string em um arquivo e estou usando o seguinte comando em um script.

sed "s / a / b / g" arquivo

Todas as ocorrências de uma estão ficando substituída por b excepção da última linha, uma vez que não têm um carácter de retorno no final da linha. Se eu entrar espaço no final do último última e
em seguida, utilize o acima sed comando, em seguida, ele funciona bem.

Quero saber se existe uma maneira que eu possa substituir todas as ocorrências. Else Qual é o comando que eu preciso para incluir no meu script antes da sed comando para que eu possa obter esse espaço extra no final da última linha
  #2 (permalink)  
Old 12-08-2004
moxxx68's Avatar
moxxx68 moxxx68 is offline
Usuário
  
 

Join Date: Mar 2004
Lugares: 301
utilizar os números de linha em vez de qualquer maneira g. ..
ex,. tentar
1, $ s / a / b /
se não
usar
1, (n) s / a / b /
que deve funcionar .. então você precisa descobrir por que razão a bandeira g não está funcionando .. pode ser que você não está usando sed de acordo com a sintaxe do arquivo ... ela poderia ser o que você precisa fazer algo como isso s / \ <a\> / b / i não pode ver o arquivo de forma não posso dizer .. tente este site para ajudar
http://sed.sourceforge.net
moxxx68
  #3 (permalink)  
Old 12-08-2004
bhargav's Avatar
bhargav bhargav is offline Forum Advisor  
Usuário
  
 

Join Date: Sep 2004
Localização: E.U.A.
Lugares: 511
Eu faço alguns como este ...

echo "">> ficheiro1 coloca a nova linha no final do arquivo.



$ Cat abcd.txt
abcde
abdcrewuroewr
abababbaaba
abbabbaba $ echo "">> abcd.txt
$ Cat abcd.txt
abcde
abdcrewuroewr
abababbaaba
abbabbaba
$ sed '$ $ (a \)' abcd.txt
$ sed 's / a / b / g / abcd.txt
>
$ sed 's / a / b / g' abcd.txt
bbcde
bbdcrewuroewr
bbbbbbbbbbb
bbbbbbbbb
$
  #4 (permalink)  
Old 12-08-2004
bhargav's Avatar
bhargav bhargav is offline Forum Advisor  
Usuário
  
 

Join Date: Sep 2004
Localização: E.U.A.
Lugares: 511
Sry para o post anterior desordenado

$ Cat abcd.txt
abcde
abdcrewuroewr
abababbaaba
abbabbaba $ echo "">> abcd.txt
$ Cat abcd.txt
abcde
abdcrewuroewr
abababbaaba
abbabbaba
$ sed 's / a / b / g' abcd.txt
bbcde
bbdcrewuroewr
bbbbbbbbbbb
bbbbbbbbb
  #5 (permalink)  
Old 12-08-2004
Ygor's Avatar
Ygor Ygor is offline Forum Staff  
Moderador
  
 

Join Date: Oct 2003
Localização: -31.96,115.84
Mensagens: 1.409
Alguns utilitários, como sed, São linhas de base, ou seja, elas só funcionam em linhas completas. Então, quer adicionar uma nova linha para a última linha, como bhargav sugere, mas se você só quer fazer simples tradução de caracteres e, em seguida, considere utilizar tr, que funciona em qualquer arquivo, por exemplo ..

tr 'a' 'b' <ficheiro1> ficheiro2
  #6 (permalink)  
Old 12-08-2004
yeshwants yeshwants is offline
Usuário
  
 

Join Data: dezembro 2004
Posts: 2
Obrigado amigos. Realmente aprecio sua ajuda. Ambas as sugestões; anexando espaço e tr comando funcionar bem para mim.
Closed Thread

Marcadores

Thread Tools Pesquisar este Thread
Pesquisar este Thread:

Pesquisa Avançada
Display Modes Esta taxa Thread
Esta taxa Thread:

Destacamento Regimento
Você não pode postar novas threads
Você não pode postar respostas
Você não pode postar anexos
Você não pode editar suas postagens

BB code é Ligado
Smilies são Ligado
[IMG] código é Ligado
Código HTML é Desligado
Trackbacks são Ligado
Pingbacks são Ligado
Refbacks são Ligado




Todos os horários são GMT -4. A hora é agora 01:47.


Powered by: vBulletinCopyright © 2000 - 2006, Jelsoft Enterprises Limited. Língua Traduções Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
O UNIX e Linux Fóruns Content Copyright © 1993-2009. Todos os Direitos Reserved.Ad Gestão por RedTyger

Content Relevant URLs por vBSEO 3.2.0