从R调用sed时转义引号

从R调用sed时转义引号,r,sed,quotes,R,Sed,Quotes,从终端调用时 sed -i -e 's/^/#\x27 /' file 通过在每行开头插入#“来编辑文件。但我想从R内部执行此操作。首先,我注意到执行字符串 "sed -i -e \'s/^/#\x27 /\' file" 在R中返回 "sed -i -e 's/^/#' /' file" 问题是\x27已经被解释了,所以我需要的命令 system("sed -i -e \'s/^/#\x27 /\' file") 失败,并显示有关未终止字符串的错误消息。如何将sed命令从R中传递到命令

从终端调用时

sed -i -e 's/^/#\x27 /' file
通过在每行开头插入
#“
来编辑
文件
。但我想从
R
内部执行此操作。首先,我注意到执行字符串

"sed -i -e \'s/^/#\x27 /\' file"
R
中返回

"sed -i -e 's/^/#' /' file"
问题是
\x27
已经被解释了,所以我需要的命令

system("sed -i -e \'s/^/#\x27 /\' file")

失败,并显示有关未终止字符串的错误消息。如何将
sed
命令从
R
中传递到命令行?

我的设备(Mac)上的sed命令不会发生这种情况。我使用just-sed得到的行为与加倍反斜杠得到的行为相同(即,避开反斜杠:

system("sed -i -e 's/^/#\\x27 /\' file.txt")

在这两种情况下,我都在文本中看到了#\x27。

我的设备(Mac)上的sed命令并不是这样的。我使用sed获得的行为与加倍反斜杠得到的行为相同(即转义反斜杠:

system("sed -i -e 's/^/#\\x27 /\' file.txt")

在这两种情况下,我都在文本中看到了#\x27。

您建议我在\x27之前加上反斜杠,这是非常正确的。我甚至想过尝试一下,但注意到您输入到
系统的字符串的计算结果与R中的原始命令不同,所以我从未尝试过!您建议我uld在\x27之前加上额外的反斜杠。我甚至想尝试一下,但注意到您输入到
系统的字符串的计算结果与R中的原始命令不同,所以我从未尝试过!