ファイル1:
A
B
C
D
ファイル2:
E
F
G
H
出力をどのように取得しますか?
A
BF
C
DH
ベストアンサー1
次のことができます。
paste -d '\n' file1 file2 | sed -n 'p;n;n;N;s/\n//p' > output
paste
2 つのファイルを 1 行ずつ交互に圧縮し、1sed
p
つ目を印刷し、2 つ目を削除し、4 つ目を 3 つ目に追加して接続し、次の行から再開します。
またはGNUを使用してくださいsed
:
paste -d '\n' file1 file2 | sed '2~4d' | paste -sd '\n\0\n' - > output
ここでは、圧縮された出力から4行の2行目のみを抽出し、接続のためにsed
2d
番目paste
に貼り付けます。
それともGNUを使い続けるsed
:
sed 'z;n' file2 | paste -d'\0' file1 - > output
これはsed
1行を圧縮し(他の実装sed
では使用可能です)、extをs/.*//
取得して印刷してfile1に貼り付けることができます。n