加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

从python 2.4输入重定向运行shell命令?

发布时间:2020-12-16 23:13:33 所属栏目:Python 来源:网络整理
导读:我想要实现的是启动以下 shell命令: mysql -h hostAddress -u userName -p userPassword databaseName fileName 从一个python 2.4脚本与一些不一样的东西: cmd = ["mysql","-h",ip,"-u",mysqlUser,dbName,"",file]subprocess.call(cmd) 这个pukes由于使用
我想要实现的是启动以下 shell命令:
mysql -h hostAddress -u userName -p userPassword 
databaseName < fileName

从一个python 2.4脚本与一些不一样的东西:

cmd = ["mysql","-h",ip,"-u",mysqlUser,dbName,"<",file]
subprocess.call(cmd)

这个pukes由于使用重定向符号(我相信) – mysql没有收到输入文件.

我也试过:

subprocess.call(cmd,stdin=subprocess.PIPE)

没有去那里以太

有人可以指定进行shell调用的语法,以便我可以在文件重定向中进行馈送?

提前致谢.

解决方法

你必须自己将文件提供给mysql stdin.这应该做
import subprocess
...
filename = ...
cmd = ["mysql",dbName]
f = open(filename)
subprocess.call(cmd,stdin=f)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读