GREP для процессов по каталогам и убить его

Я пытаюсь grep для процессов, которые происходят из каталога / Applications / (чтобы их убить), но моя команда grep продолжает ловить некоторые ложные. Что я здесь делаю неправильно?

 $ ps -ef | grep -e '/Applications/' | grep -v grep | awk '{print $8}' /Library/Application I DON'T WANT THIS /Library/Application I DON'T WANT THIS /Applications/Firefox.app/Contents/MacOS/firefox /Applications/Utilities/Terminal.app/Contents/MacOS/Terminal /Applications/Notes.app/Contents/MacOS/Notes 

3 Solutions collect form web for “GREP для процессов по каталогам и убить его”

Попробуйте включить пробел в свой шаблон:

 ... grep -e ' /Applications/' ... 

Кроме того, pkill (долгое стандартное предложение в Linux) теперь включен в OS X Mountain Lion (10.8) и выше. См. http://osxdaily.com/2012/10/18/kill-process-wildcards-pkill-mac-os-x/

Используйте символ anchor ^ (символ каретки), чтобы обозначить начало строки / поля и изменить порядок команд:

  ps -ef | grep -v grep | awk '{print $8}' | grep "^/Applications" 

Таким образом, grep будет работать последним и вернет линии, начинающиеся с /Applications .

Это также полезно.

Если вы беспокоитесь о сохранении тиков ЦП:

 ps -ef | awk '$8~"^/Applications/"{print $8}' 
  • Поиск строки и печать первого столбца первой строки с помощью awk
  • Разница между free -m и ps -euf
  • сортировка вывода ps по времени процессора на linux
  • Как начать (или найти) процесс с RUID, отличным от EUID?
  • Как найти, какие процессы выполняются пользователем прямо сейчас?
  • Как получить начальное время для несуществующего процесса в AIX?
  • Что означает aux в `ps aux`?
  • Почему я не получаю сообщение, которое не соответствует, когда я запускаю этот скрипт?
  • Поле TIME в ps -ef
  • Математическое соединение между SZ RSS и VSZ в ps o / p?
  • Top и ps не показывают тот же результат процессора
  • Linux и Unix - лучшая ОС в мире.