使用 sed -i 更改以#开头的行

使用 sed -i 更改以#开头的行

我想取消注释 /etc/apt/sources.list 中的一行以启用规范存储库,但似乎 # 字符有问题,我尝试了 -e,但我不知道我是否做得正确

sed -i ' s /# debhttp://archive.canonical.com/ubuntu/deb http://archive.canonical.com/ubuntu/g'/etc/apt/sources.list

我想要的只是在不使用编辑器的情况下对脚本进行更改

#debhttp://archive.canonical.com/ubuntu/deb http://archive.canonical.com/ubuntu

德布http://archive.canonical.com/ubuntu/deb http://archive.canonical.com/ubuntu

答案1

您发布的命令未转义正斜杠。您可以使用反斜杠将它们全部转义,或者您可以使用不同的正则表达式分隔符所以你不必转义所有斜线,例如

sed -i 's|# deb http://archive.canonical.com/ubuntu|deb http://archive.canonical.com/ubuntu|' /etc/apt/sources.list

相关内容