psexec命令可从Powershell完美运行,但无法被python识别

时间:2019-05-25 00:21:10

标签: python psexec

免责声明-我知道有一个用于此的pypsexec软件包,我在问为什么会这样以及如何解决它。

命令 psexec -s -i -d \\<PC-NAME> -u <UserName> -p <Password> <Command>

在powershell上手动键入时效果很好

但是,当我尝试使用python作为模仿方式

   from subprocess import Popen,PIPE
   p = Popen("""psexec -s -i -d \\<PC-NAME> -u <UserName> -p <Password> 
   <Command>""", stdin=PIPE, stdout=PIPE, shell= True  )
   stdout, stderr = p.communicate()
   print(stdout, stderr)

我得到以下信息:

    'psexec' is not recognized as an internal or external command,
    operable program or batch file.
    b'' None

知道为什么吗? psexec是在可变路径上配置的,正如我所说的那样,从cmd / powershell进行的工作是pskill等错误。

已解决-阅读评论

1 个答案:

答案 0 :(得分:0)

将psexec.exe移动到 C:\ windows \ SysWOW64 。从那里读取32位python
如果您有兴趣,我为PsExec制作了一个软件包:
您可以用它执行很多有趣的操作。
Project here
请检查一下:)