10,000行を超える大きなテキストファイルが2つあります。
これに基づいて、各ファイルに1行を含む新しいファイルを作成する必要があります。
ファイル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
2 つのファイル記述子を開いて読み込みます。
while read -r -u 4 l1 && read -r -u 5 l2 ; do
echo $l1
echo $l2
done 4<file1 5<file2 > new_file