我想要实现的是启动以下 shell 命令:
mysql -h hostAddress -u userName -p userPassword
databaseName < fileName
在 python 2.4 脚本中,有一些类似的内容:
cmd = ["mysql", "-h", ip, "-u", mysqlUser, dbName, "<", file]
subprocess.call(cmd)
这是由于使用了重定向符号(我相信)而引起的 - mysql 没有收到输入文件。
我也尝试过:
subprocess.call(cmd, stdin=subprocess.PIPE)
不许去那里乙醚
有人可以指定进行 shell 调用的语法,以便我可以输入文件重定向吗?
提前致谢。
您必须自己将文件输入 mysql stdin。这应该可以做到。
import subprocess
...
filename = ...
cmd = ["mysql", "-h", ip, "-u", mysqlUser, dbName]
f = open(filename)
subprocess.call(cmd, stdin=f)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)