The UNIX and Linux Forums  
Olá e boas-vindas de Estados Unidos para o UNIX e Linux Forum! Obrigado por visitar e fazer parte da nossa comunidade global.

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!

Mais UNIX e Linux Fórum Tópicos Você pode achar Helpfull
Fio Thread Starter Fórum Respostas Última postagem
necessitar de ajuda: sed e repetir padrões metalwarrior UNIX & avançada para usuários experientes 1 02-02-2008 05:00
Repetindo variáveis no código mahalakshmi Programação Shell Script e 1 02-08-2007 07:33
Repetindo comandos em um script Dave2874 Programação Shell Script e 4 03-14-2005 10:34
Omita repetindo linhas TheCrunge UNIX para Dummies Perguntas & Respostas 6 02-22-2005 06:26
repetindo mensagem do kernel progressdll UNIX & avançada para usuários experientes 2 07-29-2002 05:18

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 02-02-2008
metalwarrior metalwarrior is offline
Usuário
  
 

Join Date: Feb 2008
Posts: 16
assistência com o sed (repetindo padrões)

oi,
Preciso de escrever um comando para procurar em um arquivo de texto, encontrar as linhas que contêm os padrões de três ou mais caracteres que repetir uma vez, e colocou perenthesizes em torno deles. Assim, por exemplo, a linha "123test123" seria alterada para "(123) teste (123)" e "abcdeabcde" para "(abcde) (abcde)".
qualquer dica é apreciado.
  #2 (permalink)  
Old 02-02-2008
Prahlad Prahlad is offline
Usuário
  
 

Join Date: Feb 2008
Lugares: 11
Olá,

Eu posso te ajudar com 1. Query, onde está a tentar mudar "123test123" para "(123) teste (123)".

Isto pode ser feito facilmente utilizando SED .

----------
Sintaxe: sed -e 's / \ (123 \) / (\ 1) / g': -> g parâmetro irá substituir o exemplo a nível mundial em arquivo.

Exemplo: echo 123test123 | sed -e 's / \ (123 \) / (\ 1) / g'
Saída: (123) teste (123)
----------

Tente isto no seu arquivo e deixe-nos saber que vai no seu fim.

Obrigado,
  #3 (permalink)  
Old 02-02-2008
metalwarrior metalwarrior is offline
Usuário
  
 

Join Date: Feb 2008
Posts: 16
oi obrigado pela resposta, mas eu preciso da sed comando para encontrar todos os padrões de repetição própria e colocá-los dentro de (). Não posso especificar o padrão para que possa procurar.
ele pode ser 123 ou abc ou tudo o que é repetido através da linha.
obrigado
  #4 (permalink)  
Old 02-02-2008
Prahlad Prahlad is offline
Usuário
  
 

Join Date: Feb 2008
Lugares: 11
Olá Metalwarrior,

Você tem algum Sigle padrão para substituir?

Ou qualquer aranzel que contém 3 ou mais caracteres?

Obrigado,
  #5 (permalink)  
Old 02-02-2008
metalwarrior metalwarrior is offline
Usuário
  
 

Join Date: Feb 2008
Posts: 16
ok digamos que eu tenho essa linha, por exemplo:
thispatternthatpattern
Eu quero o sed automaticamente a encontrar os padrões repetidos e colocá-las em (). portanto após a chagne seria parecido com este,
presente (padrão) que (padrão).
  #6 (permalink)  
Old 02-02-2008
Prahlad Prahlad is offline
Usuário
  
 

Join Date: Feb 2008
Lugares: 11
Se você tiver apenas um ou limitada aranzel para substituir, em seguida, que pode ser feito facilmente com sed como explicado anteriormente.

Por favor, siga os passos.

--------
1) Salvar thispatternthatpattern em um arquivo chamado teste
2) Agora, de acordo com thispatternthatpattern que deverão ser convertidos para este (padrão) que (padrão).
3) Agora digite seguinte comando
----------
sed -i 's / aranzel / (padrão) / g' teste
-----------

4) Ver o O / P usando o "gato ensaio". Deve ser tão colado abaixo.

bash-3.1 $ cat teste
presente (padrão) nthat (padrão) n

--------

Obrigado,
  #7 (permalink)  
Old 02-02-2008
metalwarrior metalwarrior is offline
Usuário
  
 

Join Date: Feb 2008
Posts: 16
oi tnx, mas esse não é o que estou procurando.
como eu disse eu não quero especificar então padrão para sed.
Eu quero encontrar automaticamente todos os padrões que são repetidos e fazer algo com eles. a expressão regular seria algo parecido com isto:
".* \ (3, \) \ .* \ 1 '
mas eu só posso salvar a coisa toda em register1, eu cant distinguir entre o primeiro padrão, repetido padrão e conteúdo possíveis entre eles.
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 12:17.


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