我的自定义安装脚本实际上正对着墙。
在脚本的一点上,我需要为64位计算机启用64位存储库,并且(例如)我需要从该格式获取:
#multilib-testing[...] #include[...] #multilib[...] #include[...]
以这种格式
#multilib-testing[...] #include[...] multilib[...] include[...]
但是,正如您所看到的,到处都有包含,我不能使用sed,因为它会递归删除该特定文件的所有“包含”,这不是我想要的...
我似乎找不到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