我想使用 Linux 终端以某种方式组合两个文本文件,如下所示:规则是我添加两个文件,使得文件 2 的每一行交替出现,但 6 除外,在 6 下,文件 2 中不应有任何行,对于 7 , 2 行应该位于文件 2 的下面
文件一:
1
2
3
4
5
6
7
8
9
10
11
文件2:
a
b
c
d
e
f
g
h
i
j
输出:
1
a
2
b
3
c
4
d
5
e
6
7
f
g
8
h
9
i
10
j
11
答案1
使用 GNU sed:
$ sed -e '6!RFile 2' -e '7RFile 2' File\ 1
1
a
2
b
3
c
4
d
5
e
6
7
f
g
8
h
9
i
10
j
11
答案2
$ awk 'NR==FNR{Arr[NR]=$0;next}{print;if(Arr[FNR]){print Arr[FNR]}}' file2 file1
1
a
2
b
3
c
4
d
5
6
读取 file2 并将值保留在 Array 中,然后开始读取 file1 并与 file2 值一起打印