一、简介

salt file.replace 文件内容处理函数,类似于ansible的lineinfile模块

二、参数介绍

name

  被编辑文件的绝对路径,支持软链接

pattern

  常规表达式,使用python的search函数进行匹配

repl

  新替换的文件内容

count

  替换发生的次数,默认为0全部替换

flags

  re module定义的flags,格式为list,such as ['IGNORECASE', 'MULTILINE']

append_if_not_found

  默认: False,在文件末尾添加

prepend_if_not_found

  默认: False,在文件开始处添加

not_found_content

  默认: None,使用repl参数的内容

  使用此处内容进行替换,如果匹配的文本内容没有找到,并且append_if_not_found或prepend_if_not_found设置成True,

  如果repl使用反向引用,那么就要设置not_found_content

backup

  在编辑文件之前,对文件进行备份(没有改动的文件不会做备份操作)

  备份在当前文件目录下,后缀名为你在backup中定义的

show_changes

  True: 输出新旧文件内容的差异处

  False: 如果对文件有改动,返回一个bool值

三、Example

/tmp/sshd_config:
file.replace:
- pattern: "^(PermitRootLogin) no"
- repl: '\1 yes'
- backup: .bak20181024
- show_changes: True
- append_if_not_found: True
- not_found_content: "PermitRootLogin no"

PS: salt version / 2016.11

file.replace的更多相关文章

  1. File类与FileInfo类

    File是一个静态类,常用于文件操作,读取,修改文件等等.File类的大部分方法最终都是转换为流(Stream)的操作,只不过是.net提取帮你封装好了这些常用的流.并且会自动清理占用的资源. 例如: ...

  2. Js/Jquery获取input file的文件名

    html代码:     <input type="file" name="file" id="file" class="in ...

  3. 【C# IO 操作】 Path 路径类 |Directory类 |DirectoryInfo 类|DriveInfo类|File类|FileInfo类|FileStream类

    Directory类 Directory类 是一个静态类,常用的地方为创建目录和目录管理. 一下来看看它提供的操作. 1.CreateDirectory 根据指定路径创建目录.有重载,允许一次过创建多 ...

  4. Fedora 24中的日志管理

    Introduction Log files are files that contain messages about the system, including the kernel, servi ...

  5. 解析大型.NET ERP系统 版本控制

    数据库版本控制 1) 开发版本控制.控制多人同时修改数据库产生的冲突,使用SQL Source Control 工具做版本管理. SQL Server Management Studio支持VSS和T ...

  6. 详解:基于WEB API实现批量文件由一个服务器同步快速传输到其它多个服务器功能

    文件同步传输工具比较多,传输的方式也比较多,比如:FTP.共享.HTTP等,我这里要讲的就是基于HTTP协议的WEB API实现批量文件由一个服务器同步快速传输到其它多个服务器这样的一个工具(简称:一 ...

  7. THINKPHP源码学习--------文件上传类

    TP图片上传类的理解 在做自己项目上传图片的时候一直都有用到TP的上传图片类,所以要进入源码探索一下. 文件目录:./THinkPHP/Library/Think/Upload.class.php n ...

  8. MS SQLServer 批量附加数据库 分类: SQL Server 数据库 2015-07-13 11:12 30人阅读 评论(0) 收藏

    ************************************************************ * 标题:MS SQLServer 批量附加数据库 * 说明:请根据下面的注释 ...

  9. 配置nginx支持ssl服务器—HTTPS

    下文摘自: http://docs.bigbluebutton.org/install/install.html     Configuring HTTPS on BigBlueButtonAncho ...

随机推荐

  1. IDEA Spring-boot-devTools 无效解决办法二

    转载地址:Intellij IDEA 使用Spring-boot-devTools无效解决办法 相信大部分使用Intellij的同学都会遇到这个问题,即使项目使用了spring-boot-devtoo ...

  2. 性能测试 tps持续走低,响应时间持续增加,瓶颈分析

    吞吐量图如上 响应时间图如上 自身压测的机器,资源使用率并没有饱和 服务器,top命令下看到load average的值很低,本身是4核的server. 每个核的CPU使用率也极低,空闲cpu占95+ ...

  3. springboot整合redis缓存

    使用springBoot添加redis缓存需要在POM文件里引入 org.springframework.bootspring-boot-starter-cacheorg.springframewor ...

  4. R-CNN(Rich feature hierarchies for accurate object detection and semantic segmentation)论文理解

    论文地址:https://arxiv.org/pdf/1311.2524.pdf 翻译请移步: https://www.cnblogs.com/xiaotongtt/p/6691103.html ht ...

  5. RabbitMQ入门_06_深入了解ack

    A. Delivery Tag 参考资料:https://www.rabbitmq.com/confirms.html 仔细查看一下 Consumer 的回调方法: public void handl ...

  6. Tensorflow的基本概念与常用函数

    Tensorflow一些常用基本概念与函数(一) 1.tensorflow的基本运作 为了快速的熟悉TensorFlow编程,下面从一段简单的代码开始: import tensorflow as tf ...

  7. HDU-5050 Divided Land (二进制求GCD)

    题目大意:将两个二进制数的GCD用二进制数表示出来. 题目分析:这道题可以用java中的大数类AC. 代码如下: import java.io*; import java.math.BigIntege ...

  8. datafile相关(add、rename、drop)

    --case 1 add14:25:04 FPYJ(150_9)@test> alter tablespace fpyj_data02 add datafile '/oradata02/test ...

  9. Oracle性能诊断艺术-读书笔记(脚本execution_plans截图)

  10. Silverlight 5 Developer Rumtime

    因为更新了Silverlight SDK,所以也要更新相应的Silverlight开发运行时. Silverlight 5 Developer Rumtime (32bit): http://go.m ...