以编程方式获取上次重启的日期/时间

时间:2011-02-11 18:25:43

标签: c++ c linux reboot

我想在Linux中以编程方式找到上次重启的时间。我在我的模块中使用C和C ++。

有API吗?

3 个答案:

答案 0 :(得分:5)

您可以调用uptime或查看/proc/uptime。鉴于当前时间,并且知道系统启动了多长时间,您可以计算上次重启的时间。

或者,btime中的/proc/stat条目直接提供启动时间(自纪元以来的秒数) - 搜索btime {{1}}。

答案 1 :(得分:1)

没有直接api,但你可以阅读/proc/uptime“file”来了解系统运行了多少秒,从当前时间减去 - 并假设机器重启时。

  

的/ proc /正常运行时间                 该文件包含两个数字:系统的正常运行时间   (秒)和时间量   花在闲置过程中(秒)。

答案 2 :(得分:0)

此外,您可以通过读取/ var / log / wtmp文件找到上次重启时间。这是一个二进制文件,但您可以使用它(或其C版本)进行解析

http://pastebin.com/nSVw82cZ

[警告!可怕的编码风格!]