Когда я проверяю список процессов и выявляю те, которые мне интересны, grep
сам результат также включается в результаты. Например, для вывода списка терминалов:
$ ps aux | grep terminal
user 2064 0.0 0.6 181452 26460 ? Sl Feb13 5:41 gnome-terminal --working-directory=..
user 2979 0.0 0.0 4192 796 pts/3 S+ 11:07 0:00 grep --color=auto terminal
Обычно я использую, ps aux | grep something | grep -v grep
чтобы избавиться от последней записи ... но это не элегантно :)
Есть ли у вас более элегантный хак для решения этой проблемы (кроме того, что все команды объединены в отдельный скрипт, что тоже неплохо)
ps ux | awk '/name/ && !/awk/ {print $2}'
grep -v grep
делает часть?
grep -v grep
исключает grep
из результатов grep. Если grep используется в сочетании с ps, то также будет показан процесс grep (с аргументами grep), который загромождает ваши результаты. grep -v grep - распространенный способ избежать этого