我正在尝试替换xml文件的字符串。尝试下面的食谱。没工作
ruby_block 'replace_file' do
block do
f= Chef::Util::File_Edit.new('C:\Chef_File_Edit\server.xml')
f.search_file_replace(8081,8080)
f.write_file
end
end
我的Moto是用8080代替8081.上面的食谱有什么问题?
答案 0 :(得分:1)
使用字符串而不是整数f.search_file_replace('8081', '8080')
。值得注意的是,FileEdit的使用非常高,高度不推荐使用。它导致非常脆弱的系统。使用template
或cookbook_file
资源来控制server.xml
文件将是一个更好的解决方案。
答案 1 :(得分:1)
ruby_block 'replace_file' do
block do
f= Chef::Util::FileEdit.new('C:\Chef_File_Edit\server.xml')
f.search_file_replace('8081','8080')
f.write_file
end
end