Python和Windows 10:';telnet';未被识别为内部或外部命令、可操作程序或批处理文件
我快疯了 从python脚本启动时,我无法使telnet运行。我正在新安装的Windows10上运行 运行此脚本时:Python和Windows 10:';telnet';未被识别为内部或外部命令、可操作程序或批处理文件,python,windows,cmd,telnet,Python,Windows,Cmd,Telnet,我快疯了 从python脚本启动时,我无法使telnet运行。我正在新安装的Windows10上运行 运行此脚本时: import subprocess cmdline = "telnet 172.19.52.34" rc = subprocess.call("start cmd /K " + cmdline, shell=True) 我犯了可怕的错误。CMD保持打开状态,在C:\Windows\System32中找不到telnet命令 但是当我打开一个普通的CMD时,telnet可以从C:\
import subprocess
cmdline = "telnet 172.19.52.34"
rc = subprocess.call("start cmd /K " + cmdline, shell=True)
我犯了可怕的错误。CMD保持打开状态,在C:\Windows\System32中找不到telnet命令
但是当我打开一个普通的CMD时,telnet可以从C:\Windows\System32工作。C:\Windows\System32\中的手动查找显示telnet可执行文件
当我在python启动的CMD中测试PATH环境变量时,C:\Windows\System32\就在那里
任何指向解决方案的指针都是非常感谢的
请把理智带进我的世界
亲切的问候
/Bernhard我发现了问题:这是64位windows上32位python的问题。在我安装了64位版本的python之后,它就工作了。您的windows注册表中是否启用了telnet命令?您已经查看了path变量等,但是在手动使用命令行时,您是否可以运行python代码试图运行的命令
start cmd/K telnet
?也可能start
实际上不是命令,而是命令行直接支持的功能。您能否只运行子进程。call(“telnet”,shell=True)
?Start
是cmd的命令<代码>启动用于以不寻常的方式启动程序。尝试以正常方式启动telnet。键入start/?
。如果我从Windows运行此命令,请运行:“cmd/K telnet 172.19.52.34”,它工作正常。telnet在我的脚本中不可见。我从没想过这是可能的,那是什么意思呢。32位程序将在SYSWoW64中查找非System32的文件。您可以通过C:\Windows\sysnative\telnet
指定64位版本。请参阅32位应用程序可以通过将%windir%\Sysnative替换为%windir%\System32来访问本机系统目录