![]() |
|
|
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 |
| línea de impresión de la columna 1, antes de la transición | ajp7701 | Programación de scripts de shell y | 2 | 04-18-2008 12:05 AM |
| cómo leer la columna de impresión y los valores en virtud de que la columna | gemini106 | Programación de scripts de shell y | 6 | 03-28-2008 07:05 AM |
| Podemos utilizar 'tr' comando para imprimir la columna 5 de la producción de 'ls-l' | Nidhi2177 | Programación de scripts de shell y | 4 | 09-17-2007 07:53 AM |
| imprimir columna usando awk | cdfd123 | Programación de scripts de shell y | 2 | 07-26-2007 02:15 PM |
| awk puede imprimir utilizando una variable de columna? | jambesh | Programación de scripts de shell y | 36 | 09-26-2006 08:39 AM |
![]() |
|
|
Linkback vínculo | Herramientas de hilo | Buscar en este Hilo | Tasa de Hilo | Modos de visualización |
|
|
|
||||
|
Imprimir fila si el valor en la columna 1 es la primera aparición
Hi All,
Me gustaría tener un script que es capaz de llevar a cabo la continuación. Imprimir toda la fila si column1 que es "0001" para el siguiente ejemplo es el primera aparición. Tras "0001" de sucesos no se imprimen y así sucesivamente. Cualquier experto puede ayudar? Entrada: 0001 k \u003d 40 0001 k \u003d 2 0002 k \u003d 1 0003 k \u003d 1 0004 k \u003d 77 0004 k \u003d 1 0005 k \u003d 88 0005 k \u003d 6 Salida: 0001 k \u003d 40 0002 k \u003d 1 0003 k \u003d 1 0004 k \u003d 77 0005 k \u003d 88 |
|
||||
|
Código:
$ cat buf 0001 k= 40 0001 k= 2 0002 k= 1 0003 k= 1 0004 k= 77 0004 k= 1 0005 k= 88 0005 k= 6 $ perl -n -e '($num) = split /=/; next if $found[$num]; print; $found[$num] = 1' buf 0001 k= 40 0002 k= 1 0003 k= 1 0004 k= 77 0005 k= 88 |
|
||||
|
$ cat prueba
0001 k \u003d 40 0001 k \u003d 2 0002 k \u003d 1 0003 k \u003d 1 0004 k \u003d 77 0004 k \u003d 1 0005 k \u003d 88 0005 k \u003d 6 i en `cat test | cut-d" "-f1» hacer grep "$ i" prueba | head -1>> out.txt hecho sort-u out.txt 0001 k \u003d 40 0002 k \u003d 1 0003 k \u003d 1 0004 k \u003d 77 0005 k \u003d 88 |
|
||||
|
Brillante, radoulov!
![]() |
|
||||
|
Cita:
El perl código parece funcionar, pero no el awk. ¿Pueden ayudarme? Estoy usando Solaris por el camino. Además, se puede explicar su perl código de modo que puedo comprender mejor. ¿Cuál es la función de "ane-" Código:
$ nawk '!x[$1]++' file x[$1]++': Event not found $ awk '!x[$1]++' file x[$1]++': Event not found $ /usr/xpg4/bin/awk '!x[$1]++' file x[$1]++': Event not found Última edición por Raynon; al 03-17-2008 09:12 PM.. |
![]() |
| Marcadores |
| Etiquetas |
| solaris |
| Herramientas de hilo | Buscar en este Hilo |
| Modos de visualización | Vota a este hilo |
|
|