我有一个像这样的文件:
available_space:1232334343
capacity:123456432
total_space:1232323232
我想计算容量/total_space所以我需要计算123456432/1232323232
我可以想象我需要使用类似的东西:
cat my_file | awk -F:'FNR==2 {print$2}'
但无法编写除法本身,我不确定语法。那么我怎样才能做到这一点呢?
答案1
根据您最初的方法,关键行仅是第二行和第三行:
awk -F':' 'NR==2{ c=$2 }NR==3{ print c/$2 }' my_file
0.100182
答案2
当第一个字段为 时capacity
,将第二个字段的值保存到变量中。然后,当第一个字段为 时total_space
,将变量的值除以第二个字段的值:
awk -F: '$1 == "capacity" {c = $2} $1 == "total_space" && c != 0 {print c/$2}' my_file
0.100182