【问题标题】:joining text file with cat and bash用 cat 和 bash 加入文本文件
【发布时间】:2013-10-07 07:52:00
【问题描述】:

所以,我有两个包含

的文本文件
title1
title2

存储在title.txt

data1
data2

存储在data.txt

我想加入cat,所以它看起来像这样

title1 | data1
title2 | data2

但是,常规的cat title.txt data.txt > out.txt 会将 out.txt 文件变成

title1
title2
data1
data2

我需要有关使用 cat 的帮助,所以文件看起来像这样:

title1 | data1
title2 | data2

任何答案将不胜感激

谢谢

【问题讨论】:

    标签: linux bash shell scripting cat


    【解决方案1】:

    试着说:

    paste -d'|' title.txt data.txt
    

    对于您的输入,它应该返回:

    title1|data1
    title2|data2
    

    【讨论】:

    • @user1072976 你试过paste -d'|' file1 file2 file3吗?
    • 我试过了,它有效,但是,它留下了另一行包含“||”的行,例如:title1|data1| |
    • @user1072976 那是因为你在输入文件中有多余的空行。
    【解决方案2】:

    使用while循环从两者中读取

    while IFS= read -r line && IFS= read -r line1 <&3;
         do         
            title=`echo -ne $line`;
            data=`echo -ne "$line1"`;
            echo "$title | $data" > output.txt              
         done <data.txt" 3<title.txt"
    

    【讨论】:

      猜你喜欢
      • 2014-02-09
      • 1970-01-01
      • 1970-01-01
      • 2015-06-08
      • 2011-02-27
      • 2018-02-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多