将 bash 变量传递给 awk
Passing bash variable to awk
我正在尝试在 bash 的函数中使用 awk 从文本 table 中提取 row/column 元素。具体来说:
getel() {
awk -v col= 'FNR== {print $col }'
}
用法是:
getel <file> <row> <col>
如果我输入:
awk -v col=2 'FNR==1 {print $col}' infile
在 bash 提示符下,我得到了预期的第 1 行第 2 列。
我研究了各种 bash-awk 问题,但 none 似乎让我找到了解决方案。
最终,我想将结果赋值给另一个bash变量,即:
FOUND=`awk -v col=2 'FNR==1 {print $col}' infile`
谢谢
将另一个命令行变量传递给 awk:
getel() {
awk -v row= -v col= 'NR==row {print $col }'
}
或者您可以直接使用 bash 变量:
awk 'NR==''{print $''}'
我正在尝试在 bash 的函数中使用 awk 从文本 table 中提取 row/column 元素。具体来说:
getel() {
awk -v col= 'FNR== {print $col }'
}
用法是:
getel <file> <row> <col>
如果我输入:
awk -v col=2 'FNR==1 {print $col}' infile
在 bash 提示符下,我得到了预期的第 1 行第 2 列。
我研究了各种 bash-awk 问题,但 none 似乎让我找到了解决方案。
最终,我想将结果赋值给另一个bash变量,即:
FOUND=`awk -v col=2 'FNR==1 {print $col}' infile`
谢谢
将另一个命令行变量传递给 awk:
getel() {
awk -v row= -v col= 'NR==row {print $col }'
}
或者您可以直接使用 bash 变量:
awk 'NR==''{print $''}'