Crear un archivo csv

Crear un archivo csv

Quiero crear un archivo con dos tablas.

Por ejemplo:

Tengo esto:

cat 1.log | cut -d: -f 9 | sort | uniq
teste
teste2
teste3

y tengo otro comando:

cat 1.log | cut -d: -f 6 | cut -d " " -f2 | sort | uniq

devolver:

hello
good
bed

y quiero crear un archivo como ese:

teste | hello
teste2 | good
teste3 | bed

¿Como hacer esto?

Respuesta1

aunque solicita un csv, de hecho está solicitando un archivo delimitado por barras verticales

puedes lograr esto con el pastecomando:

paste -d '|' file1.txt file2.txt 

lo que te dará el siguiente resultado:

teste|hello
teste2|good
teste3|bed

el -din pasteinyecta un delimitador elegido

Si necesita que el resultado tenga espacios que rodeen el delimitador como |, entonces puede agregar sed 's/|/ | /g'para reemplazar todas las instancias de |(sin espacios circundantes) con |(con espacio circundante en cada lado)

paste -d '|' file1.txt file2.txt | sed 's/|/ | /g'

resultado:

teste | hello
teste2 | good
teste3 | bed

Por si acaso, si quieres un archivo separado por comas, entonces todo lo que tendrías que cambiar es

el -d '|'a-d ','


que se vería así:
paste -d ',' file1.txt file2.txt 

información relacionada