ruby - 如何使用 Chef Recipe 删除文件中的一行?

我想删除行 configuration(这个单词“configuration”在文件“hdfs-site.xml”的尖括号内)。我尝试使用此代码但没有成功。

ruby_block "delete_lines_in_hdfs_site" do
block do
  file = Chef::Util::FileEdit.new("/opt/hadoop-2.4.1/etc/hadoop/hdfs-site.xml")
  file.search_file_delete_line(/<configuration>/)
end
end

最佳答案

你需要用

结束 ruby​​ block
file.write_file

否则不会写出更改。

虽然我同意使用模板是首选并被认为是最佳实践,但有时您需要编辑现有文件,该文件可能有变化且不适合模板模型。

关于ruby - 如何使用 Chef Recipe 删除文件中的一行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35622513/

相关文章:

loops - 在同一文件中的 gnuplot 中绘制的列

json - Firebase - 如何使用 curl 编写?

php - 我可以在不使用 S3 API 的情况下从我的 Amazon S3 帐户下载文件吗?

python - 如何在 python 中将对象作为命令行参数传递?

react-native - React Native 的 Realm - 不区分大小写的搜索

memory-management - 当进程访问刚用 brk/sbrk 分配的地址时,内核会发生什

php - 匹配 Google adwords 引荐来源网址

Oracle - 带有列表范围分区的 EXCHANGE PARTITION 错误

bash - 如何用行缓冲提示包装命令?

xml - XML 文档的第一行是什么?