脚本规范合作伙伴源添加

脚本规范合作伙伴源添加

我想确保无论我处理的是哪个版本的 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”是第一个匹配。

相关内容