使用bash映射不同文件中的列条目
我的文件1如下所示:使用bash映射不同文件中的列条目,bash,Bash,我的文件1如下所示: x y C5 1 N1 2 C3 3 N2 4 C4 5 y1 y2 1 2 2 3 4 5 我的文件2如下所示: x y C5 1 N1 2 C3 3 N2 4 C4 5 y1 y2 1 2 2 3 4 5 我想打印该表单的行: @x1@x2 x1-x2_y1-y2.txt 因此,对于y1,我在文件1中查找相应的x1: @C5 @N1 C5-N1_1-2.txt @N1 @C3 N1-C3_2-3.txt 等等
x y
C5 1
N1 2
C3 3
N2 4
C4 5
y1 y2
1 2
2 3
4 5
我的文件2如下所示:
x y
C5 1
N1 2
C3 3
N2 4
C4 5
y1 y2
1 2
2 3
4 5
我想打印该表单的行:
@x1@x2 x1-x2_y1-y2.txt
因此,对于y1,我在文件1中查找相应的x1:
@C5 @N1 C5-N1_1-2.txt
@N1 @C3 N1-C3_2-3.txt
等等
有什么建议吗
awk 'FNR==NR{x[$2]=$1;next} # Store value of $1 into array x as element $2 from file1
FNR==1{next} # Ignore first line
{printf("@%s @%s %s-%s_%s-%s.txt\n",x[$1],x[$1+1],x[$1],x[$1+1],$1,$2)} # print desired output
' file1 file2