我正在运行一个命令,希望pkill -f
稍后能够使用它来终止该特定命令实例。我没有合理的方法来获取 PID。
因此,我的想法是在命令末尾附加一个唯一标识符,如下所示:
./command argument1 argument2 UNIQUE-IDENTIFIER-ASDF-GHJK-123
然后如果我想杀死它,我就可以这样做
pkill -f UNIQUE-IDENTIFIER-ASDF-GHJK-123
问题是,./command
严格只采用两个参数,因此通过传递第三个唯一标识符,它会出现错误。
有没有办法以某种方式包含这个唯一标识符字符串,而不将其传递给./command
?
谢谢。
答案1
使用 Linux:
使用具有唯一值的变量作为命令的前缀
IDENTIFIER=ASDF ./command argument1 argument2
稍后搜索此变量以获取 PID 并终止该进程
grep -sa IDENTIFIER=ASDF /proc/*/environ | cut -d '/' -f 3 | xargs kill