无法在python中嵌入awk/bash命令

无法在python中嵌入awk/bash命令,python,bash,python-2.7,Python,Bash,Python 2.7,我正在尝试用“\n”替换新行以生成单行证书文件。我使用awk和sed来实现这一点,这在linux机器上运行良好。但是,当我尝试将此代码嵌入python时,它会抛出语法错误 >>> import os >>> os.system("awk '{printf "%s\\n", $0}\' rsacert.pem > test") File "<stdin>", line 1 os.system("awk '{printf "%s\\n

我正在尝试用“\n”替换新行以生成单行证书文件。我使用awk和sed来实现这一点,这在linux机器上运行良好。但是,当我尝试将此代码嵌入python时,它会抛出语法错误

>>> import os
>>> os.system("awk '{printf "%s\\n", $0}\' rsacert.pem > test")
  File "<stdin>", line 1
    os.system("awk '{printf "%s\\n", $0}\' rsacert.pem > test")
                                                          ^
导入操作系统 >>>系统(“awk'{printf”%s\\n“,$0}\'rsacert.pem>test”) 文件“”,第1行 系统(“awk'{printf”%s\\n“,$0}\'rsacert.pem>test”) ^
SyntaxError:行连续字符后出现意外字符

语法问题从这里开始:

os.system("awk '{printf "%s\\n", $0}\' rsacert.pem > test")
                        ^

这是python字符串终止的地方,您正在python脚本中插入行控制字符,而不是系统命令

您的命令字符串使用
,但它也包含
,因此您需要转义这些字符

"awk '{printf \"%s\\n\", $0}\' rsacert.pem > test"

您试图运行的awk命令是什么?awk'{printf“%s\\n”,$0}'