zoukankan      html  css  js  c++  java
  • windows下查看进程(进阶)

    windows下查看进程(进阶)

    背景

    最近在搞appium(后续会总结一下),跑安卓的在windows上,经常启动进程,查看进程,学了一些实用的命令
    之前就知道一些命令,如下:

    # 启动appium server
    appium -p 5123
    
    # 通过端口找到进程号
    netstat -ano | findstr 5123
    
    结果如下:
    TCP    0.0.0.0:5123           0.0.0.0:0              LISTENING       58048
    
    如上,58048 就5123这个端口对应的进程号
    
    # 通过进程号查看进程详情
    tasklist | findstr 58048
    
    结果如下:
    node.exe                     58048 Console                    1     58,576 K
    
    如上,只能看到是一个node的进程
    
    

    所以这就是windows蛋疼的地方,我明明执行的appium命令,为啥给我来个node的,虽然实际调用确实是nodejs去启动appium的,但我的目的是获取到执行命令

    进阶

    找了一些资料,但仍然不够好

    get-process

    这个是powershell的命令,win10的同学推荐去安装windows terminal,请自行百度


    image.png
    image.png
    如果,通过进程号或进程名去查看进程详情,但processName也只是简陋的显示node而已
    翻阅了一些资料也没有显示命令行的

    wmic

    这个是cmd命令,所以需要去cmd窗口执行,这个可以满足我们的需求,查看到命令行的东西,但执行wmic会提示 wmic已经废弃,但还是可以用
    image.png
    image.png
    image.png

    get-wmiobject

    是的,又从cmd回到了powershell,说是wmic的替代品,powershell亲儿子!
    image.png
    image.png


    image.png


    image.png
    这个勉强实现了linux下的ps -ef | grep appium


    get-process -id <process_id>
    
    wmic process where caption="node.exe" get processid,commandline # 根据进程名查看
    
    wmic process where ProcessId="58048" get processid,commandline # 根据进程号
    
    get-wmiobject win32_process -filter "name = 'node.exe'" | select-object commandline
    
    taskkill /F /PID <pid> # 根据pid来kill进程
    
    taskkill /F /IM <process_name> # 通过name来kill进程
    
    get-wmiobject -query "select processid from win32_process where commandline like '%appium%'"
     
    get-wmiobject win32_process -filter "commandline like '%appium%'" | select-object processname,processid,commandline
    
    

    暂时折腾完了


    参考资料

    http://xntutor.com/demo/329.html
    https://stackoverflow.com/questions/17563411/how-to-get-command-line-info-for-a-process-in-powershell-or-c-sharp
    https://serverfault.com/questions/696460/given-a-pid-on-windows-how-do-i-find-the-command-line-instruction-that-execute

  • 相关阅读:
    Python与Flask
    Python与MySQL
    range,map,sum
    Java:初始化类、变量、程序块加载解析
    HTML_记录2
    HTML_记录1
    查看当前连接的实例名
    expdp impdp
    行列转换
    oracle创建定时任务
  • 原文地址:https://www.cnblogs.com/jwentest/p/13579575.html
Copyright © 2011-2022 走看看