我想确保无论我处理的是哪个版本的 ubuntu,脚本中都已添加了“合作伙伴”源。
到目前为止我已经得到:
#!/bin/sh
sudo sed -i 's/# deb http:\/\/archive.canonical.com\/ubuntu xenial partner/deb http:\/\/archive.canonical.com\/ubuntu xenial partner/' /etc/apt/sources.list
/etc
因为这是我添加的文件,所以sudo
我想这是强制性的。
我如何才能让它跨版本运行?
谢谢。
答案1
您可以从中选择代号sources.list
,因为它已经包含了它:
sudo sed -i 's,# \(deb http://archive.canonical.com/ubuntu [a-z]* partner\),\1,' /etc/apt/sources.list
我使用 来,
作为分隔符,以s
避免牙签倾斜。在这里,由于替换文本几乎已经在匹配中,我们可以使用正则表达式组 ( \(...\)
) 在替换 ( \1
) 中使用它们。
答案2
我非常确信
sudo sed -i 's/# deb http:\/\/archive.canonical.com/deb http:\/\/archive.canonical.com/' /etc/apt/sources.list
适用于任何版本
该文件中只有该行加上匹配的“partners-dev”,并且“partners”是第一个匹配。