wergio
@wergio
Программист - любитель!

Как получить имя процесса?

Каким образом можно вернуть только имя процесса?
Например: ps -u user Возвращает таблицу.
e6260b1d862d4d27ab6e7625e5aebf0a.pngМне нужно только имя процесса, чтобы вывести его на сайте.
Для вывода использую PHP скрипт:
$cmd = "ps -u s" . $server['sid'] . ";";
			ssh::exec_cmd($cmd);
			$data = trim(ssh::get_output());
			$data = explode("\n", $data);
			$d['proc'] = 0;
			foreach($data as $key => $value)
				{
				$d['proc'] = $value;
				}


Может можно сразу получить имя или как-то в цикле отфильтровать?
Кто знает, подскажите.
  • Вопрос задан
  • 3283 просмотра
Решения вопроса 1
saboteur_kiev
@saboteur_kiev Куратор тега Linux
software engineer
ps -p $$ -o comm -h

смотрим процесс -p $$ (pid текущего процесса), выводим только колонку с командой (-o comm), скрываем строку с заголовками (-h)
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 3
chupasaurus
@chupasaurus
Сею рефлекторное, злое, временное
Маны не читаем, парсим через awk, ага.
ps -u юзер -o comm
С сортировкой:
ps -u юзер -o comm --sort=-comm --no-headers | head -n 1
Ответ написан
Комментировать
wergio
@wergio Автор вопроса
Программист - любитель!
Сам спросил, сам отвечу.
Пока получилось вот так:
ps -u юзер | awk '{print $4}' | sort -rn | head -1
Ответ написан
SerafimArts
@SerafimArts
Senior Notepad Reader
Своего процесса? Тогда php.net/manual/ru/function.getmypid.php
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы