c:\pstools\psexec \\172.168.0.9 -u username -p password -i 4 -d c:\abc.exe
上面的例子是调用远程机器上的abc.exe并且显示UI界面。
这里解释一下-i和-d
-d指的是执行完命令不等待程序执行完成,命令行恢复到可输入状态,带这个选项就看不到返回值了。如果不加这个选项,abc.exe要执行很久的情况下,当前命令行窗口就不能在输入其他了。
-i 4指的是在sessionid为4的user桌面上显示abc.exe的UI。
查询SessionID可以用这个命令:
query session或Query Session username
query session user1
SESSIONNAME USERNAME ID STATE TYPE DEVICE
rdp-tcp#18 user1 4 Active
可以用powershell脚本取得sessionid
$result = query session user1
$parttern="(\s)+(\d)+(\s)+"
$result -match $parttern
$sessionId=$Matches[0].Trim()