Windows下杀后台nodejs的特定进程

nodejs前台程序直接control+c就可以干掉,而运行着多个后台的nodejs服务,就不太好杀了。在任务管理器里不论是看"进程"还是看"详细信息",无法看到这些nodejs的脚本和参数,无法简单区分,如果用的是Git-Bash环境,ps也无法区分这些服务对应的是哪些脚本和参数。
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
那么我们如果想杀掉一个特定脚本参数的服务,怎么操作呢?聪明如你,应该已经从上面的图里看到了对策,是的没错就是pid,进程ID,那么我们怎么知道执行的脚本参数对应那个进程ID呢,这个需要我们在服务里将进程ID取到,并存到一个可被杀后台nodej服务脚本访问的地方。以下是脚本中要添加的部分内容:

...
const { pid } = require('node:process');
...
fs.writeFileSync("pid/s"+sid+".pid"," "+pid);
...

将该服务的进程ID存到文件pid/s[sid].pid中,看后台服务的脚本如下:

#killsvc.sh
echo -n taskkill //f //pid >killsvc1.sh
cat pid/s$1.pid  >> killsvc1.sh
./killsvc1.sh
rm killsvc1.sh

以后运行./killsvc.sh [sid] 就可以杀掉那个sid的服务了。

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值