linux 中实现依据列名提取数据
001、
root@PC1:/home/test/test# ls a.txt root@PC1:/home/test/test# cat a.txt ## 测试数据 a b c d 3 8 6 9 0 r k 3 root@PC1:/home/test/test# awk '{for(i = 1; i <= NF; i++){if(NR == 1 && $i == "b") idx = i} {printf("%s", $idx)} {printf("\n")}; }' a.txt ## 提取列名为b的数据 b 8 r root@PC1:/home/test/test# awk '{for(i = 1; i <= NF; i++){if(NR == 1 && $i == "d") idx = i} {printf("%s", $idx)} {printf("\n")}; }' a.txt ## 列名为d d 9 3