![]() |
|
|
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 |
| selecionando apenas algumas linhas de muitos com base em um padrão comum | damansingh | Programação Shell Script e | 2 | 05-28-2008 07:29 |
| Ajuda com selecionando linhas específicas em um grande arquivo | tansha | UNIX para Dummies Perguntas & Respostas | 2 | 02-06-2008 08:26 |
| Urgente: selecção de conteúdo específico de um único arquivo usando shell script | jisha | Programação Shell Script e | 2 | 01-08-2008 08:45 |
| precisa de ajuda - script para filtrar linhas específicas de múltiplos arquivos txt | I-1 | Programação Shell Script e | 7 | 02-16-2007 08:42 |
| Shell Script para ler linhas específicas em um arquivo | varshanswamy | Programação Shell Script e | 5 | 08-22-2005 08:12 |
![]() |
|
|
Linkback | Thread Tools | Pesquisar este Thread | Rate Thread | Display Modes |
|
|
|
||||
|
comando de selecção de linhas específicas de um script
Preciso de ajuda no seguinte script:
Eu preciso imprimir as linhas que estão em negrito e letras em arquivo separado como record string ("|") emp_name; string ("|") emp_id; decimais ("|") emp_salary; string ("|") emp_status; string ( "\ n") emp_proj; fim Acima linhas estão relacionadas com o arquivo $ (_AB_PROXY_DIR) " '/ rf_emp_status_emp_proj-3.dml que está presente na 19 ª linha no script abaixo. A questão é que preciso imprimir apenas linhas específicas que estão em negrito e letras em arquivo separado. No script abaixo você encontrará um campo record que será repetir mais vezes. Preciso selecionar todos os que a partir de linhasrecord campo para fim do ficheiro $ (_AB_PROXY_DIR) " '/ rf_emp_status_emp_proj-3.dml. Por favor, você pode ajudar em enviar a carta campos em negrito arquivo separado. Estou highliting todas as linhas em que o script abaixo que eu quero, em arquivo separado, na cor vermelha print-r - 'registo string ("|") emp_name; string ("|") emp_id; decimal ( "\ n") emp_salary; termo '> "$ (_AB_PROXY_DIR)"' / in_emp_data-1.dml ' print-r - '/ * Reformate operação * / out:: reformate (em) \u003d começo fora .*:: pol *; out.emp_status:: if (next_in_sequence () <3) "A" outra "D"; out.emp_proj: "ABC"; fim; ">" $ (_AB_PROXY_DIR) " '/ rf_emp_status_emp_proj-2.xfr' print-r -- 'registo string ("|") emp_name; string ("|") emp_id; decimais ("|") emp_salary; string ("|") emp_status; string ( "\ n") emp_proj; fim; '> "$ (_AB_PROXY_DIR)"' / Rf_emp_status_emp_proj-3.dml ' print-r - '/ * Reformate operação * / out:: reformate (em) \u003d começo fora .*:: pol *; out.emp_loc:: "E.U.A."; fim; ">" $ (_AB_PROXY_DIR) " '/ rf_emp_location-4.xfr' print-r - 'registo string ("|") emp_name; string ("|") emp_id; string ("|") emp_salary; string ("|") emp_status; string ("|") emp_proj; string ( "\ n") emp_loc; fim; ">" $ (_AB_PROXY_DIR) " '/ rf_emp_location-5.dml' Obrigado, gangadhar. |
|
||||
|
Qual é o critério para decidir que parte do arquivo para extrair? O nome do arquivo de saída? Código:
perl -0777 -pe "s%;' > \"\\$\\{_AB_PROXY_DIR\\}\"'/rf_emp_status_emp_proj-3.dml'.*%%s;
s/^.*print -r -- '//s" file
Isto passa em todo o arquivo, e substitui tudo, desde o nome do arquivo correspondente até o final do arquivo com nada, então tudo até a última "print-r - '", e imprime o que resta. As cotações ficou um pouco complicada, com muito feio barras, existem maneiras de tornar o que mais elegante, mas espero que isto deveria, pelo menos você começar. |
![]() |
| Marcadores |
| Thread Tools | Pesquisar este Thread |
| Display Modes | Esta taxa Thread |
|
|