gpt4 book ai didi

linux - 在 Linux 中杀死后台进程

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:22:31 24 4
gpt4 key购买 nike

我正在尝试为我的项目构建启动脚本和停止脚本。我需要运行一个 sass 自动编译器和一个服务器,并将两者的输出重定向到一个文件。为此,我正在使用 lite-serversass --watch

为了使这些进程并发运行,我使用 & 将进程置于后台。这对停止脚本提出了挑战,我无法像往常一样使用 Ctrl+C 停止脚本。我想我可以通过将进程 ID 存储在文本文件中来克服这个问题。

我想出了以下“启动”脚本:

# Start a sass watcher and a server running simultaneously. Store the PIDs in a
# text file so that the processes can be easily stopped.

(
lite-server &
echo $! > .pids.txt &
sass --watch sass:css --style=compressed &
echo $! >> .pids.txt &
) &> log.txt
cat .pids.txt

然后,为了停止进程,我正在使用

kill $(cat .pids.txt)

将进程 ID 写入文本文件似乎有点老套。有没有更好的方法来完成我想做的事情?

最佳答案

我可能更喜欢对进程进行 grep 并终止进程,而不是将 PID 保存在文件中。

ps -ef | grep lite-server | awk '{print $2}' | kill -9

我假设 ps -ef 输出的第二列是您服务器中进程 lite-server 的 PID。

关于linux - 在 Linux 中杀死后台进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38815685/

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