![]() |
Olá e boas-vindas de Estados Unidos para o UNIX e Linux Forum! Obrigado por visitar e fazer parte da nossa comunidade global.
|
|
google unix.com
|
|||||||
| Fóruns | Registar | Fórum Regimento | Ligações | Álbuns | FAQ | Lista deputados | Calendário | Pesquisa | Today's Posts | Mark Forums Read |
| 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 |
| Para analisar o arquivo e impressão através da saída ou usar awk sed script | cdfd123 | Programação Shell Script e | 4 | 03-03-2008 12:07 |
| analisar o texto arquivo | craggm | Programação Shell Script e | 9 | 02-27-2007 02:13 |
| analisar o texto arquivo | klick81 | Programação Shell Script e | 3 | 12-18-2006 12:04 |
| Parse arquivo texto e enviar mails | Amruta Pitkar | UNIX para Dummies Perguntas & Respostas | 12 | 08-11-2006 03:56 |
| Como analisar um arquivo de texto com \ 034 como campo e \ 035 como delimitador final da mensagem? | indianya | Programação Shell Script e | 1 | 08-26-2005 09:20 |
![]() |
|
|
Linkback | Thread Tools | Pesquisar este Thread | Rate Thread | Display Modes |
|
|
|
||||
|
analisar através de um arquivo texto de saída e muitos
Oi, todos
O arquivo de entrada padrão é como a seguir: Comece Object1 txt1 fim ; Comece Object2 txt2 fim ; ... Quero analisar este arquivo em um Object1.txt, Obeject2.txt ... cada um contém uma declaração de 'Começar' para ';', por exemplo, object1.txt contém: Comece object1 txt1 fim ; --------------------------- Quaisquer pensamentos? também, Perguntas 1. Awk ou qualquer SED pode procurar por um padrão em muitas linhas? 2. como posso saída muitos arquivos? 3. Vou mover esta discussão para "Programação Shell Script e"? Thank you in advance ![]() |
|
||||
|
Se você usar bash Você poderia tentar algo assim, muito simples e, provavelmente, muitas das armadilhas. Mas, uma vez que você está processando o código fonte, existem regras sintáticas que pode ser esperado para ser seguido. Limitou-se a controlos de Comece a palavra e incrementos o nome do arquivo índice quando encontradas.
Código:
lakris@ubuntu:~/projekt/scripts$ cat projekt.txt Begin Object1 txt1 end ; Begin Object2 txt2 end ; Begin Object3 txt3 end ; Begin Object4 txt4 end ; lakris@ubuntu:~/projekt/scripts$ cat splitit.sh #!/bin/bash cnt=0 while read line;do [[ "$line" =~ "Begin" ]] && cnt=$(($cnt+1)) echo $line goes into Object$cnt.txt done < projekt.txt lakris@ubuntu:~/projekt/scripts$ ./splitit.sh Begin Object1 goes into Object1.txt txt1 goes into Object1.txt end goes into Object1.txt ; goes into Object1.txt Begin Object2 goes into Object2.txt txt2 goes into Object2.txt end goes into Object2.txt ; goes into Object2.txt Begin Object3 goes into Object3.txt txt3 goes into Object3.txt end goes into Object3.txt ; goes into Object3.txt Begin Object4 goes into Object4.txt txt4 goes into Object4.txt end goes into Object4.txt ; goes into Object4.txt lakris@ubuntu:~/projekt/scripts$ / Lakris |
|
||||
|
Comece então a primeira declaração (AAAAA) acaba em Object1.txt o segundo (bbbbbb) em Object2.txt etc Quer mandar chamado Object-aaaaa.txt, Object-bbbbbb.txt etc?
Dê uma olhada na linha enquanto lê construir. Você pode dividir-se para ler mais de uma variável ... ou Você pode tratar linha como um array. ![]() |
|
||||
|
Citação:
Obrigado |
![]() |
| Marcadores |
| Tags |
| linux, ubuntu |
| Thread Tools | Pesquisar este Thread |
| Display Modes | Esta taxa Thread |
|
|