Linux/Unix Shell Scripting - Filtrado de campos

 
Vista:

Filtrado de campos

Publicado por Juanfran (2 intervenciones) el 23/03/2007 16:35:24
Hola
Os cuento mi problema. Tengo un fichero de texto en que que cada linea tiene una serie de campos de informacion referente a usuarios. Necesito procesar dichas lineas para mostrar solo el nombre de los usuarios (el primer campo de cada linea), pero como la longitud de las lineas es muy grande y sobrepasan el ancho de la pantalla, tambien se filtran los caracteres que aparecen en la siguiente linea. A ver si con un ejemplo queda mas claro

Ejemplo de linea del fichero:

Pepe lkasjdfhlsdkfjh askljdfhlskajfhlasdjkfh 88283729 8282 kadkjhkajdhla klajsdfhlkasjdfhlsjk
jdash aaaaa
.
.
.

Al hacer: cut -d' ' -f1 archivo.txt el resultado seria:

Pepe
jdash
.
.
.

Se os ocurre como puedo solucionarlo?
Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Filtrado de campos

Publicado por Juanfran (2 intervenciones) el 23/03/2007 17:47:07
A ver, he conseguido algo.
Con cut -f 1 -d ' ' log.txt | sort consigo sacar todos los nombres ordenados, pero tambien saco todas las lineas con la "basura". Ahora las lineas buenas estan todas ordenadas, y solo me falta desacerme de la basura. ¿Alguna idea de como puede ser?

Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Filtrado de campos

Publicado por Tom (12 intervenciones) el 24/03/2007 11:13:13
El ancho de la pantalla no tiene nada que ver.
Lo que supongo que ocurre es que en tu fichero las líneas ya están "partidas", es decir, hay un \n donde no debería.
Prueba con la opción -s o arregla el fichero juntando las líneas partidas.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar