我有一个包含三列的数据文件,我想搜索第三列中的最小值并打印列1,2和3的相应值。 我想使用linux终端命令来做。我该怎么办? 我尝试了grep命令并剪切了-f1 -d“,” SilhouetteRESFsi1.dat |排序-n |也为-1,但它没有给我正确的值。
谢谢。
答案 0 :(得分:0)
您可以使用sort
来获取第三列的最小值:
sort -n -k 3 file.txt | head -n 1
-n
选项是按数字排序(默认为字母)-k
选项用于指定要排序的列-t
选项用于指定列分隔符(默认为空格或制表符)说明:
由于使用了sort
选项,命令-n
可以对文件进行动态排序(将最低的编号放在第一位,然后将最大的放在最后)。
然后,head
命令采用“正在运行的排序缓冲区”的第一行,因此仅产生一行(值最低的那一行)。
要削减三个最低值,例如:
sort -n -k 3 file.txt | head -n 3