FreeBSD 11.0-RELEASE-p1 FreeBSD 11.0-RELEASE-p1 #0 [电子邮件受保护]:/usr/obj/usr/src/sys/GENERIC amd64
grep (GNU grep) 2.5.1-FreeBSD
你好。我想检查 Asterisk 进程的可用性,所以我使用以下命令:
ps aux | grep /usr/local/sbin/asterisk
但输出不相关,因为它包含两个字符串(第一个用于 Asterisk 进程,第二个用于 grep 进程):
asterisk 44044 9.8 2.1 866912 133628 - Is 14:35 121:27.41 /usr/local/sbin/asterisk -n -F -U asterisk
root 44242 0.0 0.0 14796 2484 4 S+ 09:50 0:00.27 grep /usr/local/sbin/asterisk
所以我想排除“grep”字符串。在 Linux 中我可以使用标志 -v,但在 FreeBSD 中我应该做什么?
答案1
快速回答:更改模式,使其不会显示在 ps 中,但仍然匹配,例如使用方括号搜索
/usr/local/sbin/asteris[k]
也许更好的答案:使用类似的程序pgrep
“根据名称和其他属性查找或发出信号处理”