Como mesclar dois arquivos na linha correspondente?

8

Agora, tenho dois arquivos:

aaaa.txt :

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

bbbb.txt :

d=3
e=4
f=5

Quero mesclar aaaa.txt e bbbb.txt a cccc.txt .

cccc.txt da seguinte forma:

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

Então, o que posso fazer por isso?

    
por binghenzq 06.11.2013 / 04:24

1 resposta

12

Você pode usar o colar para isso:

paste -d '
paste -d '%pre%' aaaa.txt bbbb.txt > cccc.txt
' aaaa.txt bbbb.txt > cccc.txt

Da sua pergunta, parece que o primeiro arquivo contém ; no final. Se não, você poderia usar isso como o delimitador usando -d ';' .

Observe que, ao contrário do que se pode pensar, com -d 'paste' , não é colado com um caractere NUL como delimitador, mas com um delimitador vazio. Essa é a maneira padrão de especificar um delimitador vazio. Algumas implementações de paste como o GNU paste -d '' permitem paste -d '' para isso, mas não é padrão nem portátil (muitas outras implementações reportarão um erro sobre o delimitador em falta se você usar %code% ).

    
por 06.11.2013 / 04:33