Windows 下如何通过 Python 脚本调用 cmd 命令并执行
1>问题来由:因为之前 vim 环境配置没有配好,所以才有了这个想法:通过脚本连续执行 cmd 命令。
2>问题描述:(附上代码)
import os
def command_line():
#os.system('cmd')
cmd_path = [r"E:\tools\vim80-586w32\vim\vim80\vim.exe "]#列出源文件地址
cmd_command = "cmd cd {0}".format(cmd_path)
os.system(cmd_command)#通过 os 的命令来调用 cmd 的命令
#cmd = 'cmd cd {}'.format(source)
command_line()
#完成命令后的反馈
print('Successful the vim!')
3>在 bing 了一通无果之后,就思考,windows 下是否可以通过脚本连续执行 cmd 命令?另外有的话,可否告知其他方法?谢谢各位大 v 指点!!!
Windows 下如何通过 Python 脚本调用 cmd 命令并执行
subprocess 模块 有带 session 支持的 交互式 执行系统内程序的功能
os.system() 太旧了
python popen 关键词你找找,应该有的
cd 到了 exeexe 文件上?
你这代码错误太多了,首先你直接 cd 到 exe 上去了,还有如果调用 cmd 命令, 需要后面加 \C 参数
比如 cmd /C dir c:\windows,还有 os.system 本身可以代表 cmd,也就是说你执行的代码前面不需要加 cmd,还有如果切换目录,可以直接用 python 本身的命令,然后再执行就行。。
先写个 bat 啊。
os.system(“cd E:\tools\vim80-586w32\vim\vim80 && start vim”)
第一个问题是:为什么不直接调用 vim 就好了?
第二个问题是 Windows 的每个盘符具有自己的 working directory,因此只是 cd 不会改变有效的 working directory (因为当前盘符或许不是 E:),一个安全的做法是使用 pushd E:\Path\To\Dir & start .\vim.exe & popd。
最后,如果你的全部目的是执行一些命令提示符处理的程序,可以换用 batch ——提示:batch 文件必须使用 CR LF。
cmd 的 cd 需要加参数,cd /d path, 执行命令或者外部程序需要加 /c, 简单点就写个 bat,调用 cmd 还是 powershell 随便你
因为之前我有直接通过 cmd 找到相应路径打开 vim,启动 exe 文件所以就直接把命令敲上去了。
谢谢指点,问题已解决!
谢谢指点,cd 不会改变有效的 working directory 这个涨姿势了。


