ansible模块之file

概要说明

ansible是一款非常强大的自动化运维工具,使我们可以很快捷地实现对远程目标服务器的自动化运维,包括服务器维护,文件操作,实时监控,项目服务更新,备份等等N多行为,就像你手工远程到服务器的一系列操作,都可以通过ansible帮你完成,而且它还是可以批量操作的。今天介绍的是它的file模块。

1,file模块用来管理文件和文件属性(删除文件、符号链接或目录)

2,对于 远程服务是Windows 目标,改用ansible.windows.win_file模块

参数说明

实际工作中比较常用的参数有:

path:要管理的文件的路径

state:状态这个参数,它的值有,absent,directory,file,hard,link,touch

absent:如果path指定是目录,目录将被递归删除,

如果path指定是文件,文件将被删除,文件或符号链接将被取消链接

如果要删除的目录或文件不存在,默认不会报错。

directory:使用directory值,则将创建所有中间子目录(如果它们不存在)。

由Ansible 1.7开始,具有创建中间子目录的权限

file:如果使用file值 ,但没有使用其它参数,则返回路径的当前状态

如果使用了其它参数,如mode,则会改变文件的权限,如果文件不存在,

是不会创建文件的。

hard:将创建或更改硬链接

link:将创建或更改符号链接

touch:可以用来判断文件是否存在,如果不存在,将会创建一个空文件。

mode:给文件或目录授权。授权时,如果你习惯用数字,如644,777等,

在ansible中需要写成0644,0777,或写成 "644","777"。

从1.8开始,可指使用符号授权(例如,u+rwx或u=rw,g=r,o=r)。

如果未指定mode,则新创建的文件将按当前系统默认的权限处理

该模块其他参数可参见下图:


ansible模块之file


实例

更改文件授权

- name: Change file  permissions
  ansible.builtin.file:
    path: /root/foo.conf
    mode: '1777'


创建一个软链接

- name: Create a  link
  ansible.builtin.file:
    src: /path1/to/link/to
    dest: /path2/to/symlink
    state: link


删除文件(当foo.txt文件不存在,将不会返回报错)

- name: Remove file
  ansible.builtin.file:
    path: /root/foo.txt
    state: absent


删除目录(将删除子目录)

- name: Recursively remove directory
  ansible.builtin.file:
    path: /root/myfoo
    state: absent
展开阅读全文

页面更新:2024-03-17

标签:递归   模块   子目录   概要   路径   符号   权限   状态   参数   目标   操作   链接   服务器   文件   目录   科技

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号

Top