如何在Linux中修改配置文件

时间:2014-04-09 06:54:17

标签: linux

我有一个文件stat.config -

 [stat=1]
 name=value
 name=value

 [stat=2]
 name=value
 name=value

我有一个脚本文件scr.sh,需要通过查找上下文并仅在上述上下文中附加数据来更新配置文件。

如何做到这一点?

1 个答案:

答案 0 :(得分:1)

通常我喜欢回答问题,但这次我强烈建议您不要使用shell脚本。 Shell脚本适用于简单的任务,但它们很精细。如果您的脚本中存在错误,则会删除或损坏您的配置文件。

最好使用更强大的语言,如Python,Perl或Ruby。 Python的configparser库似乎完全符合您的要求。如果我正确阅读文档,您可以这样做:

config = configparser.ConfigParser()
config.read('example.ini')

config['stat2']['flame'] = "42"

with open('example.ini', 'w') as configfile:
     config.write(configfile)

关于这一点的好处是,如果程序在编辑config时失败,那么就不会写任何内容,因此可以减少文件崩溃的危险。

我所提到的其他语言可能也有同样好的解决方案。