如何并排打印多个文件的输出

问题描述 投票:5回答:4

我有4个文件说:

cat test1
1 
2   
3

cat test2
4  
5  
6  

cat test3
7  
8  
9  

我需要将以下内容并排显示:

1  4  7  
2  5  8  
3  5  9

我试过pr -m -t test1 test2 test3,但是如果有任何值很大,输出正在修剪,我需要根据值的长度显示内容并且应该并排显示内容(列式)

linux
4个回答
2
投票

你可以简单地做到:

cat *.txt | paste -d " " - - - | sed 's/_//g'

1
投票

您可以使用此命令在打印时不会截断列值:

On-Tenth Tast 1 Tenth 2 Tenth 3 - Sap-String =“||”


1
投票

试试paste,例如:

$ cat test1 test2 test3 | paste -d " " - - -

来自男人:

如果为一个或多个输入文件指定了-,则使用标准输入;对于-的每个实例,标准输入一次一行地循环读取。

因此,如果您不关心订单,并且假设您想要使用所有*.txt文件,那么您可以简单地执行以下操作:

$ paste -d " " *.txt

你也可以使用lam

$ lam test1 -s " " test2 -s " " test3

两个示例都使用space作为分隔符" "并将输出:

1 4 7
2 5 8
3 6 9

0
投票

根据你的问题完成nbaripaste test1 test2 test3 | column -t

附:对于大于屏幕大小的列:paste test1 test2 test3 | column -t| less -S

© www.soinside.com 2019 - 2024. All rights reserved.