Abordagem curta awk :
awk 'NR==FNR{ a[$2]=$1; next }FNR in a{ $0=a[FNR] }1' file2 file1
-
a[$2]=$1
- capturando o primeiro campo$1
valores usando o segundo campo$2
valor como arraya
index (ao processar o primeiro arquivo de entrada, ou seja,file2
) -
$0=a[FNR]
- substitua a linha inteira pelo valor em relação ao número de registro atualFNR
(ao processar ofile1
)
A saída:
1111
no
approved
333