Python fabric.api反斜杠地狱

Hoa*_*888 4 python backslash fabric

我是python和fabric api的新手.我正在尝试使用sudo功能在bash终端中运行sed命令,该命令在找到特定文本行后插入一些文本.我正在尝试插入到我正在修改的文件中的一些文本包含反斜杠,这些反斜杠似乎被结构忽略或导致语法错误.我试过"shell = true"和"shell = false"选项,但仍然没有运气.我怎样才能逃避反斜杠?似乎"shell = true"只能逃避$和".我的代码如下.

sudo('sed -i"/ sometext/a textwith\backslash"/home/me/somefile.txt',shell=True)

Roc*_*key 6

尝试为字符串添加前缀r,这意味着它将被解释为原始字符串:

sudo (r' sed -i "/sometext/a textwith\backslash" /home/me/somefile.txt',shell=True)
Run Code Online (Sandbox Code Playgroud)

有关字符串文字及其在Python中的用法的更多信息,请参见此处.