Как получить работоспособность UNIX в Java? - PullRequest
8 голосов
/ 21 ноября 2011

Каков наилучший способ получить работоспособность UNIX в Java? Существует ли стандартная библиотека / функция Java, которую я мог бы использовать, или мне следует использовать exec или ProcessBuilder из Runtime для выполнения uptime? Спасибо

Ответы [ 3 ]

8 голосов
/ 21 ноября 2011

Вы можете прочитать /proc/uptime:

new Scanner(new FileInputStream("/proc/uptime")).next();
//"1128046.07" on my machine and still counting

Из Википедия :

Показывает, как долго система была включена с момента последнего перезапуска:

$ cat /proc/uptime
  350735.47 234388.90

Первое число - это общее количество секунд, в течение которых система работала .Второе число показывает, сколько времени машина провела в режиме ожидания, в секундах.

3 голосов
/ 21 ноября 2011

Вероятно, это полностью зависит от системы, но вы можете использовать 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

Предупреждение. Это вряд ли будет работать на всех платформах.

3 голосов
/ 21 ноября 2011
Runtime.getRuntime().exec('uptime');

Вы пробовали это? Единственная команда, которая делает что-то эквивалентное system('uptime'); в Java - это runTime.exec(). Это все, что я мог придумать ..

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...