В настоящее время у меня есть файл .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
Извините, я не был достаточно ясен раньше, в общем, я хочу запустить скрипт Python из консоли PuTTY, а внутри этого скрипта Python мне нужно запустить команду PuTTY, о которой я упоминал ранее (metl -m migration.pickle1....)
Итак, что я пытаюсь запустить, так это:
import os
os.system("metl -m " + path + ""\"" + migbefore + "-t " + path + ""\"" + migafter + "-s " + csvfile + " " + directory + ""\"" + config_file.yml)
""\""
подстроки из вашего кода (вам это не нужно). Но если вам нужно поставить"\"
, используйте"\\"
вместо""\""
. - person Ilya   schedule 26.09.2014config_file.yml
должен быть в кавычках. Просто поставьте кавычки правильно, чтобы решить эту проблему. - person Ilya   schedule 26.09.2014