【问题标题】:How to kill(if process exist) & restart a process in a single command line如何在单个命令行中杀死(如果存在进程)并重新启动进程
【发布时间】:2016-04-23 14:02:40
【问题描述】:

我处于想要终止进程(如果存在)并重新启动相同的情况。怎么做?

目前我正在这样做

killall -9 inetd && /bin/inetd

如果 inetd 没有运行,我会得到这个

killall: /bin/inetd: no process killed

即使 inetd 没有运行,我也希望上述命令能够成功。

【问题讨论】:

  • 使用; 来排序命令,而不是&&,这是一个条件。
  • 但如果 killall 出现问题,它将继续使用 /bin/inetd。我不希望这种情况发生。即使找不到特定的过程,我也希望它成功。
  • 你说你想启动inetd,即使killall 不起作用,不是吗?所以; 将会运行这两个命令......你真正想要什么?

标签: linux shell unix kill-process


【解决方案1】:

使用;

killall -9 inetd; /bin/inetd

【讨论】:

  • 但如果 killall 出现问题,它将继续使用 /bin/inetd。我不希望这种情况发生。即使找不到特定的过程,我也希望它成功。
  • 这是不可能的:“如果每个列出的命令至少有一个进程被杀死,或者没有列出任何命令并且至少一个进程与 -u 和 -Z 匹配,则 killall 返回零返回码搜索条件。killall 否则返回非零值。"
猜你喜欢
  • 2016-04-30
  • 2015-02-20
  • 2014-04-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-06-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多