gpt4 book ai didi

Linux合并多个文件

转载 作者:太空狗 更新时间:2023-10-29 12:15:28 25 4
gpt4 key购买 nike

我有多个文件必须合并。

例如,这是两个文件。

1.txt

Allele Sequence
B*07:02:01 ABCDE
B*07:33:01 ABCD
B*07:41 AB

2.txt

Allele Sequence
B*07:02:01 FGHIJ
B*07:33:01 EFGH
B*07:41 CD

分隔符为制表符(\t)

我想得到这样的结果

B*07:02:01 ABCDEFGHIJ     
B*07:33:01 ABCDEFGH
B*07:41 ABCD

我试过如下。

awk -F"\t" '
{key = $1}
FNR==NR {line[key]=$0; next}
key in line {print line[$1], $2}
' $1 $2 > output_2.txt

然后结果像

Allele  Sequence^M Sequence^M
B*07:02:01 ABCDE^M FGHIJ
B*07:33:01 ABCD^M EFGH
B*07:41 AB^M CD

我怎样才能更清楚和准确地表达我想要的

谢谢!

最佳答案

这可能有效:

awk 'FNR==NR {a[$1]=$2;next} FNR>1{print $0 a[$1]} ' 2.txt 1.txt
B*07:02:01 ABCDEFGHIJ
B*07:33:01 ABCDEFGH
B*07:41 ABCD

工作原理:

awk '
FNR==NR { # For first file only (2.txt)
a[$1]=$2 # Read data in to array a using $1 as key and $2 as value
next} # Skip to next record
FNR>1{ # Skip first record of second file (1.txt)
print $0 a[$1]} # Print complete record from 1.txt, and data from array using $1 as key
' 2.txt 1.txt # read the files

关于Linux合并多个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26596076/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com