如何编写.sh获取应用程序的进程ID然后停止应用程序?

时间:2015-05-21 10:15:43

标签: sh

例如,我需要使用名为SomeApp的应用程序,但它经常需要重启,所以我需要输入“ps -ef | grep SomeApp”然后“kill -9 7777” 首先找到进程ID,然后停止该进程:

XXXX:~ XXXX$ ps -ef | grep SomeApp
333  7777     1   0  1:40PM ??         0:40.31 /Users/XXXX/SomeApp
333  8888  9999   0  1:58PM abcd000    0:00.00 grep SomeApp
XXXX:~ XXXX$ kill -9 7777

现在我想把命令放到.sh中,但我有些东西不知道怎么写.sh:

  1. 排除属于我的grep操作的结果
  2. 获得正确的行结果
  3. 获取结果字符串
  4. 的第二个参数(进程ID)

    任何人都可以帮忙吗?

1 个答案:

答案 0 :(得分:1)

这样做。

ps -ef | grep 'SomeApp' | grep -v grep | awk '{print $2}' | xargs kill

或者根据操作系统查看pgreppkill