MSYS2:PID与windows 进程ID

MSYS2下启动的进程ID分两种:MSYS2空间的PID和windows的PID
以mysql为例,在MSYS2窗口启动mysqld

$ mysqld --console

如下我们在windows CMD窗口用netstat查找3306端口的进程ID为2356

C:\>netstat -aon | findstr 0.0.0.0:3306
  TCP    0.0.0.0:3306           0.0.0.0:0              LISTENING       2356

但在MSYS2下用ps找到的PID却是9744

$ ps -ef |grep mysqld
guyadong    9744    1184 pty1     17:28:04 /j/facelog-install/3rd/mysql-5.6.44-winx64/bin/mysqld

网上一通找,找到这篇文章,找到了解决办法
《Mingw-users PID question - Correlation between MSYS - WINDOWS》

MSYS2的ps有一个-W参数用于显示MSYS进程对应的windows PID,上面的ps命令加上-W,参数效果如下

$ ps -efW |grep mysqld
guyadong    9744    1184 pty1     17:28:04 /j/facelog-install/3rd/mysql-5.6.44-winx64/bin/mysqld
       0    2356       0 ?        17:28:04 D:\j\facelog-install\3rd\mysql-5.6.44-winx64\bin\mysqld.exe       

第二行的输出结果中PID即为9744这个MSYS2 进程对应的window PID

以下为MSYS2的ps输出的命令行帮助信息:

$ ps --help
Usage: ps [-aefls] [-u UID] [-p PID]

Report process status

 -a, --all       show processes of all users
 -e, --everyone  show processes of all users
 -f, --full      show process uids, ppids
 -h, --help      output usage information and exit
 -l, --long      show process uids, ppids, pgids, winpids
 -p, --process   show information for specified PID
 -s, --summary   show process summary
 -u, --user      list processes owned by UID
 -V, --version   output version information and exit
 -W, --windows   show windows as well as cygwin processes

With no options, ps outputs the long format by default


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

10km

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值