如果存在,则使用chef更改文件中的文本,如果不存在则添加

时间:2015-05-15 19:58:51

标签: ruby chef

我知道w / chef如果模式不存在,你可以在文件中添加一行

http://www.rubydoc.info/gems/chef/Chef/Util/FileEdit:insert_line_if_no_match

如果模式存在,您甚至可以更新文件中的一行

http://www.rubydoc.info/gems/chef/Chef/Util/FileEdit:search_file_replace_line

如果不存在,是否有一种方便的添加方式 - 并且如果有,则替换吗?

1 个答案:

答案 0 :(得分:2)

为什么不写自己的小帮手?

import urllib

u2 = urllib.request.urlopen('http://finance.yahoo.com/q?s=aapl&ql=1')
junk = u2.read()
print(junk)

如果确实找到要替换的内容,则会返回更改,如果发现需要添加该行,则返回更改。