Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash 如何使用“粘贴”粘贴两个不同文件的多列?_Bash_Macos - Fatal编程技术网

Bash 如何使用“粘贴”粘贴两个不同文件的多列?

Bash 如何使用“粘贴”粘贴两个不同文件的多列?,bash,macos,Bash,Macos,使用这些数据: $cat file1 8.0 175.0 9.0 405.8 10.0 844.8 11.0 307.2 $cat file2 8.0 188.5 9.0 428.6 10.0 945.7 11.0 335.9 如何将这些按行合并到一起。我用粘贴尝试了几种可能性,比如: $paste file1 file2 问题是我得到了三列,其中中间一列是从两个原始列合并而来的: 8.0 8.0.5 175.0 9.0

使用这些数据:

$cat file1
8.0     175.0
9.0     405.8
10.0    844.8
11.0    307.2

$cat file2
8.0     188.5
9.0     428.6
10.0    945.7
11.0    335.9
如何将这些按行合并到一起。我用
粘贴尝试了几种可能性,比如:

$paste file1 file2
问题是我得到了三列,其中中间一列是从两个原始列合并而来的:

8.0     8.0.5   175.0
9.0     9.0.6   405.8
10.0    10.07   844.8
11.0    11.09   307.2
我希望得到的结果如下所示:

8.0     175.0    8.0    188.5
9.0     405.8    9.0    428.6
10.0    844.8    10.0   945.7
11.0    307.2    11.0   335.9

您的文件有\r\n行结尾,因此第一行实际上是:

8.0\t175.0\r\t8.0\t188.5\r\n
#^^^^^^^^^^^..^^^^^^^^^^^^
# file1         file2
#          tab added by paste

在您的文件上运行
dos2unix
sed-i.bak的/\r$/'

这没有意义。“粘贴”应该在每两条粘贴的行之间插入一个选项卡,因此输出应该与您的示例非常相似。当我重新创建您的示例时,我会得到您指定的输出。唯一的区别是前两行没有前导空格,前导空格不是故意的。很抱歉原因可能是我使用OS X?顺便说一句,您的“损坏”输出来自命令
paste file2 file1