如何输出内部最低值的行的位置?
我有一个包含以下数据的文件:
2233|charles harris |g.m. |sales |12/12/52| 90000
9876|bill johnson |director |production|03/12/50|130000
5678|robert dylan |d.g.m. |marketing |04/19/43| 85000
2365|john woodcock |director |personnel |05/11/47|120000
5423|barry wood |chairman |admin |08/30/56|160000
1006|gordon lightfoot|director |sales |09/03/38|140000
我需要找到最后一列的最低值并返回其位置
答案 0 :(得分:1)
您可以使用此命令仅获取显示值的行号(如果值出现多次,则会给出多个行号):
var=$(cut -d "|" -f 6 filename|sort -nr|tail -n1|grep -w -n -f /dev/stdin filename|awk -F ":" '{print $1}');cut -d "|" -f 6 filename |grep -w -n $var filename|awk -F ":" '{print $1}'
为了查看具有最低值的行及其行号,请使用以下命令:
var=$(cut -d "|" -f 6 filename|sort -nr|tail -n1|grep -w -n -f /dev/stdin filename|awk -F ":" '{print $1}');cut -d "|" -f 6 filename |grep -w -n $var filename