将行从一个文件插入到另一个文件的简单方法

将行从一个文件插入到另一个文件的简单方法

我有两个包含超过 10000 行的大型文本文件。

我需要根据它们创建一个新文件,其中包含每个文件中的一行。

文件1

  线a
  B线
  线c
文件2

   1号线
   2号线
   3号线

输出

新文件

   线a
   1号线
   B线
   2号线
   线c
   3号线

答案1

简单地与paste命令:

paste -d'\n' file1 file2 > result
  • -d'\n'- 使用换行符\n作为相应合并项目/行之间的分隔符

$ cat result
line a
line 1
line b
line 2
line c
line 3

答案2

使用awk

$ awk '1; { getline <"file1" } 1' file2
line a
line 1
line b
line 2
line c
line 3

或者,更详细地说,

$ awk '{ print; getline <"file1"; print }' file2
line a
line 1
line b
line 2
line c
line 3

答案3

使用file descriptors

打开两个文件描述符并从中读取

while read -r -u 4 l1 && read -r -u 5 l2 ; do
echo $l1
echo $l2
done 4<file1 5<file2 > new_file

读书人

相关内容