awk '
NR==1 {
for (i=1; i<=NF; i++) {
f[$i] = i
}
}
{ print $(f["foo"]), $(f["baz"]) }
' file
foo baz
1 alpha
2 beta
3 gamma
Esse é um idioma imensamente útil. Eu tenho muitos dados em planilhas e diferentes planilhas podem ter um subconjunto comum de colunas nas quais estou interessado, mas não necessariamente na mesma ordem em todas as planilhas ou com o mesmo número de outras colunas antes / entre elas para poder exportar -los como CSV ou similar e, em seguida, simplesmente executar um script awk usando os nomes das colunas em vez de números de coluna é absolutamente inestimável.