【发布时间】:2014-11-20 16:49:20
【问题描述】:
我目前有一个 .sh 文件,我从中运行一个名为 metl 的命令。
metl 是一个 python 包,它有助于从几乎任何来源提取、转换和加载数据。
我需要在腻子控制台中正常工作的正常程序如下:
metl -m migration.pickle1
-t migration.pickle2
-s filename.csv
config_file.yml
我从我的 .sh 文件运行并且正常工作的过程如下:
metl -m migrationfiles/"${migbefore}" \
-t migrationfiles/"${migafter}" \
-s "${y}" \
config_file.yml
对不起,我之前不够清楚,一般我想从 PuTTY 控制台运行一个 Python 脚本,并且从这个 Python 脚本中我需要运行一个 PuTTY 命令,这是我之前提到的 (metl -m migration.pickle1....)
所以我要运行的是:
import os
os.system("metl -m " + path + ""\"" + migbefore + "-t " + path + ""\"" + migafter + "-s " + csvfile + " " + directory + ""\"" + config_file.yml)
【问题讨论】:
-
这和 PuTTY 有什么关系?另外,请附上有问题的代码、你用来运行它的命令、它的作用以及它与你期望它做的不同之处。
-
尝试从您的代码中删除所有
""\""子字符串(您不需要它)。但如果你需要输入"\",请使用"\\"而不是""\""。 -
另外,
config_file.yml必须用引号引起来。只需正确加上引号即可解决关闭此问题。 -
我也试过这个解决方案,效果很好,我设法解决了更正语句引号的问题,非常感谢!