![]() |
Hola y bienvenida de los Estados Unidos a la UNIX y Linux Foros! Gracias por su visita y formar parte de nuestra comunidad global.
|
|
google unix.com
|
|||||||
| Foros | Registro | Reglas de los Foros | Enlaces | Álbumes | Preguntas más frecuentes | Lista de miembros | Calendario | Búsqueda | Puestos de hoy | Marcar Foros Como Leídos |
| Programación de scripts de shell y Plantear preguntas sobre KSH, CSH, SH, BASH, PERL, PHP, SED, AWK y otros scripts de shell y lenguajes de script de shell aquí. |
Más UNIX y Linux Foro Temas usted puede encontrar útiles
|
||||
| Hilo | Hilo para principiantes | Foro | Respuestas | Último mensaje |
| cómo mover el puntero a un archivo especial en la línea C | user_prady | Programación de Alto Nivel | 7 | 03-27-2008 12:32 AM |
| devolver la línea anterior | user_prady | Programación de scripts de shell y | 12 | 12-18-2007 07:37 AM |
| la manera de ir en la línea anterior vim | useless79 | UNIX para usuarios avanzados y expertos | 2 | 09-16-2007 08:10 AM |
| buscar y recuperar la línea anterior en el expediente | paulsew | Programación de scripts de shell y | 2 | 02-23-2007 08:04 AM |
| Del día anterior, fecha en Perl? | rajus19 | Programación de scripts de shell y | 4 | 07-18-2006 12:40 AM |
|
|
Linkback vínculo | Herramientas de hilo | Buscar en este Hilo | Tasa de Hilo | Modos de visualización |
|
||||
|
Perl cómo mover el puntero a la línea anterior en un archivo txt?
Tengo un archivo de texto que tiene bloques de texto. Cada bloque comienza con # # # y termina con End_ # # #.
Escribí un perl secuencia de comandos para buscar una cadena de la línea 2 (hacer caso omiso de cualquier línea comienza con # # #) de cada bloque si corresponde, es necesario que todo el bloque de impresión. Según el archivo de entrada a continuación, se imprimirán los bloques # 02, # 04, # 05. Aquí está mi pregunta, no tengo problemas que coinciden con el SEARCH_STR, pero una vez combinados, ¿cómo puedo volver a las líneas anteriores? por ejemplo, en bloque # 02, acompañado en la línea 3, pero necesito imprimir las líneas 1 y 2. Gracias de antemano por cualquier ayuda! Mi script: \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d #! / 46020/local/bin /perl -w # if ($ # ARGV! \u003d 0) ( print "Usted debe proporcionar un criterio de búsqueda. \ n"; salida; ) my $ query \u003d $ ARGV [0]; my $ ENTRADA \u003d "/ mypath / inputFILE.txt"; my $ line; my $ tag \u003d 0; my @ results \u003d (); open (FILE, "<$ INPUT") or die "No se puede abrir" $ INPUT "file: $!"; while ($ linea \u003d <FILE>) ( next if ($ linea \u003d ~ / ^ # [0-9] [0-9] .* - / | | $ linea \u003d ~ / ^ \ s *$/); if ($ linea \u003d ~ / $ consulta / i) ( tag \u003d $ 1; ) if ($ linea \u003d ~ / ^ # End_ / & & $ etiqueta \u003d\u003d 1) ( Pulsar (@ resultados, $ linea) if ($ tag \u003d\u003d 1); $ tag \u003d 0; ) Pulsar (@ resultados, $ linea) if ($ tag \u003d\u003d 1); ) close (FILE); print "@ resultados \ n"; salida; InputFile: \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d # 01 - bloque de línea de salida aquí algún texto aquí más texto aquí más líneas más líneas más líneas End_ # 01 # 02 - bloque de línea de salida aquí algún texto aquí esta línea contiene las SEARCH_STR y algo más líneas más líneas End_ # 02 # 03 - bloque de línea de salida aquí algún texto aquí más texto aquí más líneas más líneas más líneas End_ # 03 # 04 - bloque de línea de salida aquí algún texto aquí más líneas más líneas la SEARCH_STR está aquí y algo algún texto aquí más líneas más líneas más líneas End_ # 04 # 05 - bloque de línea de salida aquí algún texto aquí más líneas la SEARCH_STR está aquí y algo más líneas End_ # 05 # 06 - bloque de línea de salida aquí algún texto aquí más texto aquí más líneas más líneas más líneas End_ # 06 |
| Marcadores |
| Herramientas de hilo | Buscar en este Hilo |
| Modos de visualización | Vota a este hilo |
|
|