Ansible模块[04]:archive

1、应用

  • 压缩远程主机上的文件。

2、参数

  • path:远程主机的绝对路径。
  • dest:目标存档的文件名。
  • format:指定文件压缩的类型。默认类型为.gz,其余压缩类型有(bz2, gz, tar, xz, zip)。
  • owner:压缩后文件的属主。
  • group:压缩后文件的属组。
  • mode:压缩后文件的权限。
  • remove:添加到存档后,删除所有添加的源文件。
  • force_archive: 将强制视其为存档,即使只指定了一个文件。

3、示例

1、将目录/path/to/foo/压缩到/path/to/foo.tgz。

- name: Compress directory /path/to/foo/ into /path/to/foo.tgz
  archive:
    path: /path/to/foo
    dest: /path/to/foo.tgz

2、将常规文件/path/to/foo压缩到/path/to/foo.gz并将源文件删除。

- name: Compress regular file /path/to/foo into /path/to/foo.gz and remove it
  archive:
    path: /path/to/foo
    remove: yes

3、创建/path/to/foo zip格式的存档

- name: Create a zip archive of /path/to/foo
  archive:
    path: /path/to/foo
    format: zip

4、创建多个文件的bz2存档。

- name: Create a bz2 archive of multiple files, rooted at /path
  archive:
    path:
    - /path/to/foo
    - /path/wong/foo
    dest: /path/file.tar.bz2
    format: bz2

5、创建全局路径的bz2存档,同时排除特定的文件。

- name: Create a bz2 archive of a globbed path, while excluding specific dirnames
  archive:
    path:
    - /path/to/foo/*
    dest: /path/file.tar.bz2
    exclude_path:
    - /path/to/foo/bar
    - /path/to/foo/baz
    format: bz2

6、创建全局路径的bz2存档,同时排除筛选出来的一些文件。

- name: Create a bz2 archive of a globbed path, while excluding a glob of dirnames
  archive:
    path:
    - /path/to/foo/*
    dest: /path/file.tar.bz2
    exclude_path:
    - /path/to/foo/ba*
    format: bz2

7、使用gzip压缩单个文件。

- name: Use gzip to compress a single archive (i.e don't archive it first with tar)
  archive:
    path: /path/to/foo/single.file
    dest: /path/file.gz
    format: gz

8、创建单个文件的tar.gz存档。

- name: Create a tar.gz archive of a single file.
  archive:
    path: /path/to/foo/single.file
    dest: /path/file.tar.gz
    format: gz
    force_archive: true
posted @ 2021-03-20 00:01  lizhi_box  阅读(250)  评论(0)    收藏  举报