我在python中执行shell命令时遇到了问题。以下是导致错误的代码的一部分:
p = subprocess.Popen(["cat input.txt |apertium -d. kaz-morph|\
sed -e 's/\$\W*\^/$\n^/g'| cut -f2 -d'/'|cut -f1 -d '<'|\
awk '{print tolower($0)}'|sort -u>output.txt"], shell=True, stdout=f1)
仍然得到错误:未终止的&#39;命令。
希望你能帮助我,因为我无法解决它10天:(
P.S。对不起我的英文
答案 0 :(得分:2)
'\n'
必须为'\\n'
,否则会被解释为换行符,从而导致未终止的字符串"cat input.txt |apertium -d. kaz-morph|sed -e 's/\$\W*\^/$"
。
或者,将字符串标记为raw:r"cat input.txt |apertium ...."
。