Ruby 从“dh-H”命令生成的输出中切掉“%”
我不熟悉脚本,我正在尝试为sensu check编写一个简单的脚本,以创建磁盘空间警报 下面的命令生成一个输出:Ruby 从“dh-H”命令生成的输出中切掉“%”,ruby,Ruby,我不熟悉脚本,我正在尝试为sensu check编写一个简单的脚本,以创建磁盘空间警报 下面的命令生成一个输出: #!/usr/bin/ruby a = `df -h / | grep -v "Filesystem" | awk '{print $5}'` puts a 假设输出为35% 现在,当我尝试使用a.chop时,我想去掉%仍然没有删除% 有人能帮我从输出中去掉%。命令返回的值末尾有一个换行符: a # => "35%\n" 要使用chop删除%,您需要先删除它: a.str
#!/usr/bin/ruby
a = `df -h / | grep -v "Filesystem" | awk '{print $5}'`
puts a
假设输出为35%
现在,当我尝试使用a.chop时,我想去掉%
代码>仍然没有删除%
有人能帮我从输出中去掉%
。命令返回的值末尾有一个换行符:
a
# => "35%\n"
要使用chop
删除%
,您需要先删除它:
a.strip!
a.chop!
# => "35"
因为您要在数值比较中使用它,所以只需在一个步骤中将其转换为整数:
a = `df -h / | grep -v "Filesystem" | awk '{print $5}'`
puts a.to_i
# => 66
您可以使用两个排骨,一个用于新行字符,另一个用于结尾处的%。试试a.chop!。砍
使用a.to_i
,它忽略无关字符a.chop!。砍代码>让我笑了+1.