import java.lang.management.*
final String name = ManagementFactory.getRuntimeMXBean().getName();
final Integer pid = Integer.parseInt(name[0..name.indexOf("@")-1])
Я попробовал это в своем коде, но получил pid работающей программы. Я запускаю спящий скрипт (все, что он делает, это спит) под названием sleep.sh, и я хочу получить его pid. Есть ли способ сделать это? Я не нашел очень хороший способ сам.
Я также использовал ps | grep, и я вижу идентификатор процесса, есть ли способ его вывести?
Process proc1 = 'ps -ef'.execute()
Process proc2 = 'grep sleep.sh'.execute()
Process proc3 = 'grep -v grep'.execute()
all = proc1 | proc2 | proc3
есть ли способ изменить all.text, чтобы получить идентификатор процесса, или есть другой способ получить его?