0

以下に示すように、いくつかのテキストファイルがあります。これらのファイルの内容を 1 つに結合したいと考えています。

ファイル A

>AXC
145
146
147
>SDF
1
8
67
>FGH     

ファイルB

>AXC
>SDF
 12
 65
>FGH
 123
 156
 190

望ましい出力

新しいファイル

>AXC
145
146
147
>SDF
 1
 8
 67
 12
 65
>FGH
 123
 156
 190    

あなたの助けをいただければ幸いです!

4

3 に答える 3

0
awk '
    /^>/ { key=$0; if (!seen[key]++) keys[++numKeys] = key; next }
    { vals[key] = vals[key] ORS $0 }
    END{ for (keyNr=1;keyNr<=numKeys;keyNr++) {key = keys[keyNr]; print key vals[key]} }
' fileA fileB
>AXC
145
146
147
>SDF
1
8
67
 12
 65
>FGH
 123
 156
 190

fileA の ">SDF" 値に先頭の空白を本当に追加したい場合は、適切な解決策をコーディングできるように、それが ">AXC" ではなく ">SDF" 値に追加される理由を教えてください。

于 2013-08-25T14:53:49.860 に答える