psexec远程打开一个cmd窗口

时间:2015-02-11 01:33:10

标签: parameters cmd remote-desktop sessionid psexec

我的要求如下:

  1. pc1是一台远程计算机,当然我知道它的计算机名称或 ip和username以及pwd
  2. pc2是我的电脑,我想打开pc1中的cmd窗口而不是我的电脑上

1 个答案:

答案 0 :(得分:1)

Answer in question converted to a community wiki answer.

OP写道:

  

解决方案:

     
      
  1. 首先,你应该知道psexec参数-i,-i是“运行程序,以便它与远程系统上指定会话的桌面交互。如果没有指定会话,则进程在控制台会议。“它是关于用户sessionID的,所以我必须知道哪个帐号是登录pc1,以及他的用户sessionID是什么

  2.   
  3. 了解他的用户sessionID的简单方法是在pc1上打开Windows任务管理器,然后单击“用户”选项卡,“ID”列是他的用户sessionID,

  4.   
  5. 所以,你得到了用户sessionID并在pc2上使用它,这里是代码

    psexec \ip or pc name -u user -p pwd -accepteula -i 2 cmd
    
  6.         

    你将在pc1上获得一个cmd窗口

         
        
    1. 但是用户sessionID是动态的,所以我写了一个批处理文件来获取用户sessionID

      @echo off
      REM Default sessionID=2
      set sessionID=2
      for /F "tokens=1,2,3,4,5" %%A in ('"query user | find "Active""') DO (
          set sessionID=%%C
      )
      echo %sessionID%
      
    2.