varias una sola que para larga imprimir hojas hoja corte como columnas columna ajustar shell awk

shell - una - ¿Cómo imprimir columnas seleccionadas separadas por pestañas?



como imprimir varias columnas de excel en una sola hoja (3)

Puede especificar el separador de campo como pestaña:

awk ''BEGIN { FS = "/t" } ; { print $1, $5 }'' filename > newfilename

O desde la línea de comandos de esta manera:

awk -F"/t" ''{ print $1, $5 }'' filename > newfilename

Tengo un archivo txt con columnas separadas por pestañas y, en base a ese archivo, deseo crear un nuevo archivo que solo contenga información de algunas de las columnas.

Esto es lo que tengo ahora:

awk ''{ print $1, $5 }'' filename > newfilename

Eso funciona, excepto que cuando la columna 5 contiene espacios, por ejemplo, 123 Street , solo aparece 123 y la calle se considera como otra columna.

¿Cómo puedo lograr lo que intento hacer?


¿Qué hay de comand cut shell simple?

muy simple pero hace el trabajo

cut -d "/t" -f 1,5 filename > newfilename


Puede usar la sintaxis de Bash de la siguiente manera:

while IFS=$''/t'' read -a cols; do printf "%s/t%s/n" "${cols[0]}" "${cols[4]}"; done < in.txt > newfile.txt

Esto guardará las columnas primera y quinta separadas por pestañas en el nuevo archivo.