如何在Java中获取UNIX的运行时间?是否有标准的Java库/函数可以使用,还是应该使用Runtime的exec或ProcessBuilder来执行“uptime”?谢谢。
如何在Java中获取UNIX的运行时间?是否有标准的Java库/函数可以使用,还是应该使用Runtime的exec或ProcessBuilder来执行“uptime”?谢谢。
/proc/uptime
:new Scanner(new FileInputStream("/proc/uptime")).next();
//"1128046.07" on my machine and still counting
来自维基百科:
显示系统自上次重新启动以来的运行时间:
$ cat /proc/uptime
350735.47 234388.90
$ cat /proc/uptime 2418163.50 4809606.42
- BetlistaRuntime.getRuntime().exec('uptime');
你试过这个了吗?在Java中,唯一能够执行类似于system('uptime');
的命令是runTime.exec()
。这就是我所能想到的。
这可能完全取决于系统,但您可以使用System.nanotime();
System.out.println("/proc/uptime " + new Scanner(new FileInputStream("/proc/uptime")).next());
System.out.println("System.nanoTime " + System.nanoTime() / 1e9);
打印
/proc/uptime 265671.85
System.nanoTime 265671.854834206
警告:这种方法可能无法在所有平台上正常工作。