gpt4 book ai didi

puppet - 取消 Puppet 中一行的注释

转载 作者:行者123 更新时间:2023-12-02 00:59:41 26 4
gpt4 key购买 nike

我正在进入 Puppet,并且喜欢它,但我的头撞到了墙上,因为一件小事,我确信这一定比我做的要容易。

我希望在用户的 .bashrc 中取消注释此行:

#force_color_prompt=yes

我一直在使用 augeas 来做很多事情,但似乎这不适用于这个。

我注意到有一个 file_line 资源,我可以使用它来确保文件中存在一行,但我需要该行保留在同一位置。

我不想用我自己的副本完全替换 .bashrc,尽管看到这种模式在 Puppet 中很流行,但它对我来说没有意义,因为我不这样做希望在升级之间保留我自己的版本。

在 sed 中我使用这个:

sed -i "s/#force_color_prompt=yes/force_color_prompt=yes/g" ~/.bashrc

有什么想法吗?

最佳答案

您可以使用 grep 将 sed 命令添加到带有 except 选项的 exec 中。像这样的东西(未经测试):

exec { 'force_color_prompt':
command => 'sed -i "s/#force_color_prompt=yes/force_color_prompt=yes/g" .bashrc'
cwd => '/home/user',
shell => true,
unless => 'grep -Fxq "force_color_prompt=yes" .bashrc',
}

或者使用您提到的 file_line 资源(我相信是 Puppet Labs stdlib 模块的一部分)来添加未注释的行并保持注释行不变。

关于puppet - 取消 Puppet 中一行的注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11843506/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com