[英]Unable to embed awk/bash commands in python
我正在嘗試用“\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")
^
SyntaxError:行繼續字符后出現意外字符
語法問題從這里開始:
os.system("awk '{printf "%s\\n", $0}\' rsacert.pem > test")
^
這是 python 字符串終止的地方,您在 python 腳本中插入行控制字符,而不是系統命令
你的命令字符串使用"
但它也包含"
所以你需要轉義那些。
"awk '{printf \"%s\\n\", $0}\' rsacert.pem > test"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.