Sed pacman.conf 为 multilib 和 include 删除#
Sed pacman.conf remove # for multilib & include
我的自定义安装脚本实际上正面临着一堵墙。
在脚本的某一点,我需要为 64 位机器启用 64 位存储库并且(例如)我需要从该格式获取:
#multilib-testing[...]
#include[...]
#multilib[...]
#include[...]
到那个格式
#multilib-testing[...]
#include[...]
multilib[...]
include[...]
但是正如你所看到的,到处都有包含,我不能使用 sed,因为它会递归地删除那个特定文件的所有 "include" 而这不是我想要的...
我似乎无法找到 sed 的解决方案。我用
尝试了我在另一个线程上看到的东西
cat /etc/pacman.conf | grep -A 1 "multilib"
但是我没学好,没办法了...
理想情况下,我想要一个 sed 解决方案(但请随时告诉我,只要您解释一下我可以获得哪些其他选项!)。
模式(和开头)应该是这样的:
sed -i '/multilib/ s/#//' /etc/pacman.conf
并且应该对模式和之后的行(包含)有效。
此外,如果您真的能教我为什么要那样做或那样做,我会很高兴,如果我不明白为什么我会那样做,我会记不起来。 (也请原谅我的游戏中英文)。
我们可以使用它来按模式匹配范围。然后我们可以匹配每行开头的 #
并将其删除。
sed -i "/\[multilib\]/,/Include/"'s/^#//' /etc/pacman.conf
我的自定义安装脚本实际上正面临着一堵墙。
在脚本的某一点,我需要为 64 位机器启用 64 位存储库并且(例如)我需要从该格式获取:
#multilib-testing[...]
#include[...]
#multilib[...]
#include[...]
到那个格式
#multilib-testing[...]
#include[...]
multilib[...]
include[...]
但是正如你所看到的,到处都有包含,我不能使用 sed,因为它会递归地删除那个特定文件的所有 "include" 而这不是我想要的...
我似乎无法找到 sed 的解决方案。我用
尝试了我在另一个线程上看到的东西cat /etc/pacman.conf | grep -A 1 "multilib"
但是我没学好,没办法了...
理想情况下,我想要一个 sed 解决方案(但请随时告诉我,只要您解释一下我可以获得哪些其他选项!)。
模式(和开头)应该是这样的:
sed -i '/multilib/ s/#//' /etc/pacman.conf
并且应该对模式和之后的行(包含)有效。
此外,如果您真的能教我为什么要那样做或那样做,我会很高兴,如果我不明白为什么我会那样做,我会记不起来。 (也请原谅我的游戏中英文)。
我们可以使用它来按模式匹配范围。然后我们可以匹配每行开头的 #
并将其删除。
sed -i "/\[multilib\]/,/Include/"'s/^#//' /etc/pacman.conf