Bagaimana cara menggabungkan dua file dalam baris yang sesuai?

9

Sekarang, saya punya dua file:

aaaa.txt:

a=0;
b=1;
c=2;

bbbb.txt:

d=3
e=4
f=5

Saya ingin menggabungkan aaaa.txtdan bbbb.txtuntuk cccc.txt.

cccc.txt sebagai berikut:

a=0;d=3
b=1;e=4
c=2;f=5

Jadi, apa yang bisa saya lakukan untuk ini?

binghenzq
sumber

Jawaban:

13

Anda dapat menggunakan tempel untuk ini:

paste -d '\0' aaaa.txt bbbb.txt > cccc.txt

Dari pertanyaan Anda, tampak bahwa file pertama berisi ;di akhir. Jika tidak, Anda bisa menggunakannya sebagai pembatas dengan menggunakan -d ';'sebagai gantinya.

Perhatikan bahwa bertentangan dengan apa yang orang pikirkan, dengan -d '\0', itu tidak menempel dengan karakter NUL sebagai pembatas, tetapi dengan pembatas kosong. Itu adalah cara standar untuk menentukan pembatas kosong. Beberapa pasteimplementasi seperti GNU pastememungkinkan paste -d ''untuk itu, tetapi tidak standar atau portabel (banyak implementasi lainnya akan melaporkan kesalahan tentang pembatas yang hilang jika Anda menggunakan paste -d '').

Chris Down
sumber
@ Chris Down - Terima kasih banyak, berhasil , / 999 / g} awk: ^ kesalahan sintaks. Apakah ada yang salah?
binghenzq
Saya tidak sepenuhnya yakin apa yang Anda coba lakukan, tetapi Anda tidak bisa melewatkan sed untuk awk seperti itu ...
Chris Down
@ Chris Down - Terima kasih, saya mengerti.
binghenzq
Tolong ajukan pertanyaan terpisah juga, pertanyaan terpisah. Itu membuat mereka berguna untuk pengguna kemudian (mungkin untuk menemukan!).
vonbrand