我有一个包含一些行和列的.tsv文件。
在列上称为“结果”,是第二列。
Bash代码:cut -f2非常适合选择“结果”中的内容。
但是如何在不知道列号的情况下使用cut命令选择此列,只有名称“result”。另外没有awk命令?
你可以尝试下面(因为没有提供样本所以没有测试它,也考虑到你的Input_file是,
分隔,你可以通过改变它的FS=","
部分来改变程序的分隔符)。
awk 'BEGIN{FS=","} FNR==1{for(i=1;i<=num;i++){if($i == "results"){column=i;break}};next} {print $column}' Input_file
上面不会打印列名,所以如果你想要打印非常第一行的列名(这是不合适的结果),那么请尝试以下操作。
awk 'BEGIN{FS=","} FNR==1{for(i=1;i<=num;i++){if($i == "results"){column=i;;print $i;break}};next} {print $column}' Input_file