Python 脚本不执行 sysinternals 命令

标签 python subprocess sysinternals

这是 Invoke pstools in Python script 的跟进

当我打开命令提示符并执行时

D:\pstools\psloggedon.exe -l -x \\10.10.10.10

我明白了

DOMAIN\user

但是当我执行脚本的时候

import sys, subprocess, socket, string
import wmi, win32api, win32con



pst = subprocess.Popen(
        ["D:\pstools\psloggedon.exe", "-l", "-x", "\\10.10.10.10"],
        stdout = subprocess.PIPE,
        stderr = subprocess.PIPE
    )

out, error = pst.communicate()


print out, "is output"

我明白了

Error opening HKEY_USERS for \10.10.10.10
is output

如何让子进程将 IP 地址读取为\10.10.10.10 而不是\10.10.10.10

顺便说一下,我尝试添加第三个反斜杠

pst = subprocess.Popen(
        ["D:\pstools\psloggedon.exe", "-l", "-x", "\\\10.10.10.10"],
        stdout = subprocess.PIPE,
        stderr = subprocess.PIPE
    )

输出是

Error opening HKEY_USERS for .0.139.40
is output

最佳答案

正如 lejlot 的评论所建议的,您必须使用“\\”,因为“\”是 python 中的转义字符。

关于Python 脚本不执行 sysinternals 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23686333/

相关文章:

Python:使用selenium清除搜索框中的现有字符串

全局标志 (gflags) 的注册表项

windows-services - PsExec 在非交互式运行时卡在许可证提示符上

python - 列表列表,将所有字符串转换为int,Python 3

python - Pandas apply 函数将 4 个元素列表返回到 4 列键错误

python2.7 使用调试的行为与不使用调试的行为不同

python - 在 cmd 中通过 Python 运行工具不等待

Python subprocess.popen 返回空字符串

data-structures - SYSTEM_HANDLE_INFORMATION 结构

android - 将图像从 Android 上传到 Python 服务器