Я хочу выполнить следующую команду из python. Когда я запускаю его из оболочки, я получаю желаемый результат, но вызываю его с подпроцессом, я получаю сообщение об ошибке.mysql command как подпроцесс python
Команда:
to_date=`date +%Y-%m-%d`; mysql -uroot -p**** lportal -e "select COUNT(*) from User_ where loginDate like \"$to_date%\";" | sed 1d
Это мой питон код:
from subprocess import *
cmd=''' to_date=`date +%Y-%m-%d`; mysql -uroot -p**** lportal -e "select COUNT(*) from User_ where loginDate like \"$to_date%\";" | sed 1d '''
cmd_out=Popen(cmd,stdout=PIPE,stdin=PIPE,shell=True,stderr=PIPE).communicate()
print cmd_out
Это ошибка я получаю, я знаю, что это \»отношение, но вратаря понять, как ее решить .
ERROR 1064 (42000) at line 1: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '-04-17%' at line 1
Почему вы это делаете, вместо того, чтобы напрямую использовать библиотеку mysql? –