当前位置:  开发笔记 > 编程语言 > 正文

Sed pacman.conf删除#用于multilib并包含

如何解决《Sedpacman.conf删除#用于multilib并包含》经验,为你挑选了1个好方法。

我的自定义安装脚本实际上正对着墙。

在脚本的一点上,我需要为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

并且对于模式和之后的行(包含在内)应该是有效的。

此外,如果您能在实际学习中真正教给我您为什么这样做或那样做,并且如果我不知道为什么会那样做,我将不记得某件事,我将感到高兴。(也请原谅我的英语中期)。



1> 小智..:

我们可以使用它来按模式匹配范围。然后,我们可以匹配#每行开头的并将其删除。

sed -i "/\[multilib\]/,/Include/"'s/^#//' /etc/pacman.conf

推荐阅读
放ch养奶牛
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有