使用 shell 变量到 select awk 列标识符
Using shell variable to select awk column identifier
这个有效:
temp=($(awk -F" " ' == 84' "".db))
这个没有(fieldnumber 存储我要搜索的列,而 val 存储我要搜索的值):
temp=($(awk -F" " -v column="$""$field_number" -v val="" '{ if(column == val) print [=13=];}' "".db))
我正在尝试根据 shell 脚本中的命令行输入来操作 awk 命令:
./dr.sh cop4342 exam1 84
(84 是要搜索的值)(exam1 在 shell 脚本中用于查找列号)
这非常不清楚,但我猜你正在寻找
temp=($(awk -F " " -v column="$field_number" \
-v val="" '{ if($column == val) print [=10=];}' "".db))
这当然可以简化为
temp=($(awk -v column="$field_number" \
-v val="" '$column == val' "".db))
这个有效:
temp=($(awk -F" " ' == 84' "".db))
这个没有(fieldnumber 存储我要搜索的列,而 val 存储我要搜索的值):
temp=($(awk -F" " -v column="$""$field_number" -v val="" '{ if(column == val) print [=13=];}' "".db))
我正在尝试根据 shell 脚本中的命令行输入来操作 awk 命令:
./dr.sh cop4342 exam1 84
(84 是要搜索的值)(exam1 在 shell 脚本中用于查找列号)
这非常不清楚,但我猜你正在寻找
temp=($(awk -F " " -v column="$field_number" \
-v val="" '{ if($column == val) print [=10=];}' "".db))
这当然可以简化为
temp=($(awk -v column="$field_number" \
-v val="" '$column == val' "".db))