![]() |
|
|
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 |
| mostrar un cambio de variable en lugar de la pantalla en ksh | raidzero | Programación de scripts de shell y | 7 | 09-25-2008 10:24 AM |
| vuelva a realizar. perfil después de cambiar la variable | sboxtops | AIX | 2 | 09-02-2008 03:19 PM |
| script bash ejecución con una variable en una sola línea | shoeb | Programación de scripts de shell y | 1 | 07-06-2008 05:14 AM |
| IFS cambiar el valor de la variable | pvar | Programación de scripts de shell y | 1 | 02-25-2005 06:21 PM |
| Pregunta muy sencilla acerca de cómo cambiar la variable PS1 en el inicio! | abidmalik | UNIX for Dummies Preguntas y Respuestas | 2 | 08-26-2002 02:05 AM |
![]() |
|
|
Linkback vínculo | Herramientas de hilo | Buscar en este Hilo | Tasa de Hilo | Modos de visualización |
|
|
|
||||
|
Hola a todos, a los nuevos im awk y apreciar si usted me dijera cómo hacerlo, tengo un archivo con varias entradas como la siguiente:
Código:
2008-09-09 21:57:45 44 403 CUSTOM_EVENT Upgrade - end1 2008-09-09 21:57:46 45 403 CUSTOM_EVENT Component Check - start 2008-09-09 21:57:56 46 403 CUSTOM_EVENT Component Check - end 2008-09-09 21:57:56 47 403 CUSTOM_EVENT OSChecksum - start 2008-09-09 21:59:15 48 403 CUSTOM_EVENT OSChecksum - end 2008-09-09 21:59:15 49 403 CUSTOM_EVENT SELLogCheck - start 2008-09-09 22:01:39 50 403 CUSTOM_EVENT SELLogCheck - end 2008-09-09 22:01:40 51 403 CUSTOM_EVENT USB to Serial Connection Test - start 2008-09-09 22:43:46 52 403 CUSTOM_EVENT USB to Serial Connection Test - start 2008-09-09 22:44:15 53 403 CUSTOM_EVENT MemoryCheck - start 2008-09-09 22:44:16 54 403 CUSTOM_EVENT MemoryCheck - end cat $ 1 | awk '(descripción \u003d $ 6 "" $ 7 "" $ 8 "" $ 9 "" $ 10 "" $ 11 "" $ 12 "" $ 13 "" $ 14 "" $ 15; imprimir descripción)' primero i obtener todos los campos del 6 al 15, y luego, cambiando la i tryed a FS - y el segundo campo de impresión ... cat $ 1 | awk '(descripción \u003d $ 6 "" $ 7 "" $ 8 "" $ 9 "" $ 10 "" $ 11 "" $ 12 "" $ 13 "" $ 14 "" $ 15; FS \u003d "-"; imprimir descripción $ 2)' por supuesto, que imprime el segundo campo de toda la línea, que es el año ... Hehe ... ¿hay alguna manera de decirle a awk para la salida de la variable del segundo campo delimitado por un "-"? agradece a todos ![]() |
|
|||||
|
En realidad, no es necesario que partir explícitamente con awk:
Código:
awk '{
for (i=6; i<=NF-2; i++)
s = s ? s FS $i : $i
print "desc:", s, "state:", $NF
s = ""
}' infile
Última edición por radoulov; al 11-18-2008 04:17 PM.. |
|
|||||
|
He añadido un comentario para demostrar que los dos campos están separados, y añadió la "ed" al verbo de acción (sólo porque suena mejor así).
Código:
> cat file74
2008-09-09 21:57:45 44 403 CUSTOM_EVENT Upgrade - end1
2008-09-09 21:57:46 45 403 CUSTOM_EVENT Component Check - start
2008-09-09 21:57:56 46 403 CUSTOM_EVENT Component Check - end
2008-09-09 21:57:56 47 403 CUSTOM_EVENT OSChecksum - start
2008-09-09 21:59:15 48 403 CUSTOM_EVENT OSChecksum - end
2008-09-09 21:59:15 49 403 CUSTOM_EVENT SELLogCheck - start
2008-09-09 22:01:39 50 403 CUSTOM_EVENT SELLogCheck - end
2008-09-09 22:01:40 51 403 CUSTOM_EVENT USB to Serial Connection Test - start
2008-09-09 22:43:46 52 403 CUSTOM_EVENT USB to Serial Connection Test - start
2008-09-09 22:44:15 53 403 CUSTOM_EVENT MemoryCheck - start
2008-09-09 22:44:16 54 403 CUSTOM_EVENT MemoryCheck - end
> cut -c65- file74 | awk '{FS="-"}{print $1" _which was_ "$2"ed"}'
Upgrade _which was_ -ed
Component Check _which was_ started
Component Check _which was_ ended
OSChecksum _which was_ started
OSChecksum _which was_ ended
SELLogCheck _which was_ started
SELLogCheck _which was_ ended
USB to Serial Connection Test _which was_ started
USB to Serial Connection Test _which was_ started
MemoryCheck _which was_ started
MemoryCheck _which was_ ended
|
![]() |
| Marcadores |
| Herramientas de hilo | Buscar en este Hilo |
| Modos de visualización | Vota a este hilo |
|
|