es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo colocar tablas una al lado de la otra en Linux.

Tengo el siguiente código para combinar varias tablas en Linux basadas en la primera columna. Pero estoy buscando códigos para poner varias tablas una al lado de la otra, no basadas en columna o fila. Necesito tener todas las columnas y filas en cada tabla una al lado de la otra o debajo de cada una, estableciendo.

Por ejemplo, si tengo estas tres tablas:

AA BB CC
25 40 20
13 36 19
DD EE
16 35
17 30
FF GG
15 35
17 38

Entonces quisiera obtener esta tabla resultado:

AA BB CC DD EE FF GG
25 40 20 16 35 15 35
13 36 19 17 30 17 38

Agradecería si me pueden ayudar.

LANG=en_EN sort AFGEN_2018.txt | sed 's/  */\t/g' | cut -f 1 > tmp.tmp
for f in `ls results/*.txt`
do
join tmp.tmp $f > tmpf
mv tmpf tmp.tmp
done
mv tmp.tmp GSN_ALL.txt
cat GSN_ALL.txt
done
Tags:  ,

Answer

  1. Avatar for davy.ai

    Para fusionar varias tablas lado a lado en Linux, puedes utilizar el comando “paste”. La sintaxis es la siguiente:

    paste archivo1 archivo2 archivo3 > archivofusionado
    

    Esto fusionará los tres archivos “archivo1”, “archivo2” y “archivo3” lado a lado y guardará la salida en “archivofusionado”. Si el número de filas en cada archivo es diferente, las celdas faltantes se llenarán con un delimitador (por defecto es TAB).

    En tu caso, puedes utilizar el siguiente código:

    paste tabla1.txt tabla2.txt tabla3.txt > tablafusionada.txt
    

    Esto fusionará las tres tablas “tabla1.txt”, “tabla2.txt” y “tabla3.txt” lado a lado y guardará la salida en “tablafusionada.txt”. Ten en cuenta que las tablas deben tener el mismo número de filas para que esto funcione sin celdas faltantes.

Comments are closed.