linux命令(37):paste,合并两个文件,对应行为一行

朱雀 2021-03-21 01:50 662阅读 0赞

paste的格式为:

paste -d -s -file1 file2

选项的含义如下:

-d 指定不同于空格或t a b键的域分隔符。例如用@分隔域,使用- d @。如果不指定,默认用空格分割

-s 将每个文件合并成行而不是按行粘贴。

- 使用标准输入。例如ls -l |paste ,意即只在一列上显示输出

  1. [root@localhost my_shell]# cat per1
  2. ID897
  3. ID666
  4. ID982
  5. [root@localhost my_shell]# cat per2
  6. P.Jones
  7. S.Round
  8. L.Clip
  9. [root@localhost my_shell]# paste per1 per2
  10. ID897 P.Jones
  11. ID666 S.Round
  12. ID982 L.Clip
  13. [root@localhost my_shell]# paste -s per1 per2
  14. ID897 ID666 ID982
  15. P.Jones S.Round L.Clip

paste -d的用法

  1. [@bjzw_97_92 merge_bash]$ cat 123.txt
  2. hello
  3. hello
  4. hello
  5. [@bjzw_97_92 merge_bash]$ cat 456.txt
  6. 123
  7. 123
  8. 123
  9. [@bjzw_97_92 merge_bash]$ paste 123.txt 456.txt
  10. hello 123
  11. hello 123
  12. hello 123
  13. [@bjzw_97_92 merge_bash]$ paste -d '&' 123.txt 456.txt
  14. hello&123
  15. hello&123
  16. hello&123
  17. [@bjzw_97_92 merge_bash]$

paste A B |tr “\t” “\n” 交叉合并

  1. wcg@ubuntu:~/data_data/all_origin_data$ cat 123.txt
  2. aa
  3. bb
  4. cc
  5. dd
  6. wcg@ubuntu:~/data_data/all_origin_data$ cat 456.txt
  7. 11
  8. 22
  9. 33
  10. wcg@ubuntu:~/data_data/all_origin_data$ paste 123.txt 456.txt |tr "\t" "\n"
  11. aa
  12. 11
  13. bb
  14. 22
  15. cc
  16. 33
  17. dd
  18. wcg@ubuntu:~/data_data/all_origin_data$

发表评论

表情:
评论列表 (有 0 条评论,662人围观)

还没有评论,来说两句吧...

相关阅读