我有一个使用
Cygwin shell脚本生成的进程,我无法使用kill命令将其杀死.即使使用带有-f选项的
Cygwin kill,我收到以下消息:
kill: couldn't open pid 1234
我想尝试用PsKill杀死它,但我找不到将Cygwin PID转换为PsKill会理解的Windows PID的方法.我怎样才能做到这一点?
您是否尝试过运行cygwin kill而不是bash内置?如果它是Windows PID,则键入:
/bin/kill -f 1234
或者如果它是Cygwin PID,则键入:
/bin/kill -9 1234
据我所知,Cygwin没有API可以调用将Cygwin PID转换为Windows PID.但是,您可以解析ps -W的输出以进行转换.或者,如果你真的,真的不想这样做,那么看一下Cygwin ps命令的源代码,看看他们从哪里得到pids. Cygwin ps source code is here..您可以在C中编写一个小实用程序来获取Cygwin pid并为您提供Windows pid.