У меня проблема с подпроцессом и печатью кавычек.
Мой скрипт на Python принимает пользовательский ввод, разбивает его на части - и мне нужно, чтобы он таким образом отправлял свои результаты в скрипт bash.
myscript.sh 'var1 == a var2 == b; othervar == c' /path/to/other/files
Я зацикливаюсь на одиночных кавычках.Python пытается вырвать их.
Я использовал это для своего теста.
subprocess.Popen([myscript.sh 'var=11; ignore all' /path/to/files], shell=True, executable="/bin/bash")
, который возвращает неверный синтаксис, указывающий на 2-ую одинарную кавычку.Я также попробовал вышеупомянутое без скобок и использования одинарных кавычек снаружи и двойных кавычек внутри и т. Д.
Другое - как-бы.
Как я говорил выше, 'var ==вар == б;othervar == c 'получен из скрипта python (в строковом формате) - и мне нужно будет вызвать это в подпроцессе следующим образом.
subprocess.Popen([myscript.sh myvariables /path/to/files], shell=True, executable="/bin/bash")
Мне просто нужно поместить одинарные кавычки вокругзначение myvariables, как в первом примере.
Есть ли какие-либо указатели относительно того, где я использую правильный метод?
Спасибо.