我正在尝试从文件中找到字符串中的最大数字。例如,在文件password.txt
中我们有:
jaime:45:/home/jaime:/bin/bash
sofia:113:/home/sofia:/bin/bash
marta:2015:/home/marta:/bin/bash
pedro:2024:/home/pedro:/bin/bash
所以最高的数字应该是2024
,我们必须将它保存到变量中: -
number=2024
我使用grep
,awk
,sed
甚至sort
尝试过多项内容,但没有任何解决方案。
答案 0 :(得分:4)
我建议:
PlotlyJS
答案 1 :(得分:1)
Awk
救援!
awk -F":" 'BEGIN{max=0}{if(($2)>max) max=$2}END {print max}' file
2024
将其保存在变量
中max="$( awk -F":" 'BEGIN{max=0}{if(($2)>max) max=$2}END {print max}' file)"
printf "%d\n" "$max"
2024
答案 2 :(得分:1)
@Thotensar:如果您的Input_file与示例输入所示相同,那么以下内容可能对您有帮助。
awk -F":" '{Q=Q>$2?Q:$2} END{print Q}' Input_file
我希望这会对你有所帮助。
答案 3 :(得分:0)
试试这个:
number=$(grep -o '[0-9]*' password.txt | sort -nr | head -1)