BASH。使一个命令的结果成为另一个命令的参数

时间:2017-11-02 09:09:25

标签: linux bash process parameter-passing

如何将一个命令的结果作为另一个命令的参数? 我试图通过父进程的pid杀死子进程并使用它pgrep

示例:pgrep -P <PID>

但是我需要杀死从pgrep

获得的PID

pgrep -P <PID> | kill - 它不起作用(

谢谢!

5 个答案:

答案 0 :(得分:1)

使用单pkill命令:

pkill -P <PID> --signal SIGTERM
  

--signal 信号
                定义要发送到每个匹配进程的信号。数字或符号信号名称都可以                 用过的。 (仅限 pkill 。)

答案 1 :(得分:0)

试试这个:

VALUE="$(pgrep -P <PID>)"
kill ${VALUE}

答案 2 :(得分:0)

你使用反引号。像这样:

kill `pgrep -P <PID>`

答案 3 :(得分:0)

这应该对你有用

kill -9 `command`

就获得pid而言,请参阅下面的示例

kill -9 `pgrep executable`
kill -9 `pgrep ps`
kill -9 `pgrep bash`

或你的命令

kill -9 `pgrep -P <PID>`

答案 4 :(得分:-1)

你可能想要&#34;杀死-9&#34;以及:

pgrep -P <PID> | xargs -n1 kill -9

要提前测试它将要做什么,请尝试:

pgrep -P <PID> | xargs -n1 echo kill -9