加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 在ruby中获得系统正常运行时间

发布时间:2020-12-17 01:37:09 所属栏目:百科 来源:网络整理
导读:我正在寻找一种更好的方法来检索系统正常运行时间.我目前的方法有效,但我觉得事情可以做得更好. def uptime_range days_up = `uptime | awk {'print$3'}`.chomp.to_i hours_up = `uptime | awk {'print$5'}`.delete(',').chomp seconds_up = time_to_seconds
我正在寻找一种更好的方法来检索系统正常运行时间.我目前的方法有效,但我觉得事情可以做得更好.

def uptime_range
  days_up = `uptime | awk {'print$3'}`.chomp.to_i
  hours_up = `uptime | awk {'print$5'}`.delete(',').chomp
  seconds_up = time_to_seconds(days_up,hours_up)
  started = Time.now - seconds_up
  "#{started.strftime('%Y.%m.%d.%H.%M')}-#{Time.now.strftime('%Y.%m.%d.%H.%M')}"
end

解决方法

在Linux系统上,您可以打开/ proc / uptime并在机器启动后读取秒数.

def started
   Time.now - IO.read('/proc/uptime').split[0].to_f
end

编辑:将to_i更改为to_f.对于to_i,当显示为字符串或整数时,start的值更可能发生变化,特别是如果引导时间接近中间的一秒而不是一秒的开始或结束.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读