如何将多个文件连接在一起,以使最终输出中的列之间没有任何间隙?例如,如果以下是两个输入:input1.txt
22211 21111 11111
22222 22222 11111
22222 11111 23211
输入2.txt
22211 21111
22222 20002
22222 11111
我希望我的输出是这样的:
22211 21111 11111 22211 21111
22222 22222 11111 22222 20002
22222 11111 23211 22222 20002
但问题是当我使用这个命令时:
paste input1.txt input2.txt > out.txt
然后 out.txt 上有一个间隙,两个文件连接在一起,如下所示:
22211 21111 11111 22211 21111
22222 22222 11111 22222 20002
22222 11111 23211 22222 20002
我应该怎么做才能看不到这个差距?我应该提到,我有 37 个 txt 文件( hap1.txt hap2.txt ..hap37.txt),我希望将它们并排连接在一起。请问有什么建议吗?
答案1
那个间隙就是一个标签。只需告诉paste
您要使用空格而不是制表符作为分隔符即可。从man paste
:
-d, --delimiters=LIST
reuse characters from LIST instead of TABs
例子:
$ paste -d' ' input1 input2
22211 21111 11111 22211 21111
22222 22222 11111 22222 20002
22222 11111 23211 22222 11111