gpt4 book ai didi

bash - 从 bash 打开然后杀死子进程

转载 作者:行者123 更新时间:2023-11-29 09:16:15 25 4
gpt4 key购买 nike

执行命令然后在一段时间后将其终止的最佳方式是什么?这就是我所拥有的;它完成了工作,但我得到了 amp: command not found 并且虽然我不确定为什么放大器首先在那里,但我知道没有它杀戮是行不通的。

feh "$output""$ext" &
echo $!
sleep 1
kill -s 9 $!
exit 1

问题是我不知道我正在执行的进程的 PID。我可以在执行时分配一个吗?

最佳答案

GNU timeout ,最新版本的 coreutils 的一部分,完全可以满足您的需求。

timeout 1 feh "$output""$ext"

运行 feh 一秒钟然后杀死它,如果它还没有结束的话。

此评论的其余部分与您当前的食谱有关:

您当前使用的食谱使用 &feh 放入后台。后面的 amp; 是一个错误,可能是某些过度热心的 HTML 编码器造成的(& 是你在 HTML 中拼写 & 的方式)。

每个进程在启动时都由内核分配一个 PID。 $! 是最近后台进程的 pid 的 shell 变量。

关于bash - 从 bash 打开然后杀死子进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7438808/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com