![]() |
|
|
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 |
| lectura archivo de texto línea por línea | MizzGail | Programación de scripts de shell y | 6 | 04-14-2008 07:58 AM |
| Línea por línea el archivo de lectura ... y mucho más! | ProFiction | Programación de scripts de shell y | 6 | 07-26-2007 12:32 PM |
| Lectura línea por línea a partir de un archivo | tej.buch | Programación de scripts de shell y | 2 | 01-23-2006 02:50 AM |
| sed no la salida de la última línea del archivo de entrada | 2reperry | Programación de scripts de shell y | 3 | 12-16-2005 12:51 PM |
| Lectura línea por línea del archivo. | akpopa | UNIX for Dummies Preguntas y Respuestas | 4 | 08-30-2001 11:20 PM |
![]() |
|
|
Linkback vínculo | Herramientas de hilo | Buscar en este Hilo | Tasa de Hilo | Modos de visualización |
|
|
|
||||
|
Hola a todos. Me doy cuenta de esto es probablemente un poco de noob cuestión, pero estoy realmente un programador de C # trabajar en un sistema de legado, y no puede recordar mucho unix.
Quiero leer de una tubería-delimeted archivo con formato como thusly: idno | PRODUCTO | Nombre | calle ciudad código postal | etc | etc | etc | etc idno | PRODUCTO | Nombre | calle ciudad código postal | etc | etc | etc | etc idno | PRODUCTO | Nombre | calle ciudad código postal | etc | etc | etc | etc Quiero copiar cada línea en otro archivo, depende de la PRODUCTO existentes en una variable de cadena que estoy en la celebración de la memoria: "prod1 | prod2 | prod3" ($ productos en el ejemplo a continuación) Por lo tanto, estaba tratando: para la línea en `cat $ temp_dir / $ archivo | awk '(print $ 0)'` hacer productos \u003d `echo" $ line "| awk 'BEGIN (FS \u003d"|"} (print $ 2)'` valid_prod \u003d `echo $ productos | grep" $ productos "» if [-n "$ valid_prod"] y, a continuación, echo "$ line">> $ new_file.txt fi hecho Sin embargo, esta línea parece que la variable independiente sobre la base de los espacios, creando el nuevo archivo como: idno | PRODUCTO | Nombre | calle pueblo código postal | etc | etc | etc | etc ¿Existe de todos modos me puede pasar a través de cada línea como un solo parámetro, independientemente de los espacios? Cualquier ayuda se aprecia con gratitud, Dave |
|
||||
|
Ifs
puede manipular el IFS (separadores de campo internos) - como ejemplo - go.dat dado que contiene las líneas con espacios
# Crear la matriz, sin la manipulación de la Federación, espacios de descanso de la serie # -Un conjunto de líneas $ (cat go.dat) para la línea en "$ (líneas [@]}"; hacer echo "" $ linea " hecho # Crear la matriz, pero en primer lugar cambiar el IFS (conjunto de nuevo - es muy importante) # Después de la matriz está definido # oIFS \u003d $ IFS IFS IFS \u003d $ (# #?) -Un conjunto de líneas $ (cat go.dat) IFS \u003d $ oIFS para la línea en "$ (líneas [@]}"; hacer echo "" $ linea " hecho # # # # # # Go.dat un idno | PRODUCTO | Nombre | calle ciudad código postal | etc | etc | etc | etc idno b | PRODUCTO | Nombre | calle ciudad código postal | etc | etc | etc | etc idno c | PRODUCTO | Nombre | calle ciudad código postal | etc | etc | etc | etc # # # Fin # # # go.dat Me doy cuenta de que no ayuda a su problema (responde a la oscuridad ya los peces), de modo que pensé que tirar mi .02 en unos IFS - puesto que he sido mordido por que en el pasado - y que es práctica muy a menudo |
|
||||
|
Muchas gracias por su ayuda, tanto de ustedes, es muy apreciado.
Yo estaba perdido en un mundo de azar ininteligible awk comandos encontrado a través de Google. |
|
|||||
|
Al leer a través de este foro, usted debe obtener un sabor de las diferentes maneras de resolver un problema. Hay cuestiones de
awk vs grep o cortar inútil del gato y muchos otros. Algunas soluciones pueden ser más robustas, mientras que otros sólo ven bien. Por lo tanto, no menospreciar pobre awk - que sirve para fines muy determinados problemas de base de datos. |
![]() |
| Marcadores |
| Etiquetas |
| awk, archivo, grep o, leer, espacios, escribir |
| Herramientas de hilo | Buscar en este Hilo |
| Modos de visualización | Vota a este hilo |
|
|