1

我正在寻找一种可以简化文本配置文件修改的工具,例如:

  • ForwardAgent yes在 /etc/ssh/ssh_config 上设置
  • 附加HGUSERAcceptEnv/etc/ssh/sshd_config (这更复杂,因为它接受几个参数,如果你的参数还没有,它应该添加它)

最重要的:

  • 运行几次应该没有副作用。
  • 如果某些东西看起来很奇怪,它应该会抱怨(例如,如果您在文件中多次找到同一行,或者预期的语法不匹配)。

是否有任何 linux 工具可以轻松用于自动化这样的事情?

重点是能够在某处编写这些配置补丁,以便您可以在需要时将它们部署在多台机器或新机器上。

4

2 回答 2

1

您可能想了解嵌入式 Linux 系统中使用的统一配置接口 (UCI) 。如果您可以灵活地为您的配置文件调整 UCI 格式,那么这与您正在寻找的内容非常相似。

于 2014-08-19T05:20:52.517 回答
1

我当然会用 bash 脚本来做到这一点。这是一个很棒的教程。

http://linuxconfig.org/Bash_scripting_Tutorial

要更改文件中的一行,您可以执行以下操作:
检查文件是否存在
grep 以获取您要更改的值 - 如果它出现多次或
使用 sed 更改该行时出现错误

将某些内容附加到文件
检查文件是否存在
grep 以确保它没有被附加到已经
回显任何 >> 文件 - 双大于附加到文件

对于其中的每一个,我都会先制作文件的备份副本,以防万一出现问题

于 2012-05-25T13:07:40.197 回答