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
davy.ai
Para fusionar varias tablas lado a lado en Linux, puedes utilizar el comando “paste”. La sintaxis es la siguiente:
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:
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.