使用Ansible Unarchive从tar存档中提取目录

时间:2018-09-18 09:02:50

标签: ansible tar

我想从tar文件中提取一个目录。

在Linux OS中用于解压缩安装目录-我只是这样做:

tar -xvf ingres.tar install

对于Ansible,我尝试过:

unarchive:
  remote_src: yes
  src: /ingres/ingres.tar
  dest: /ingres
  extra_opts:
    - "install"

但这当然不起作用。有想法吗?

1 个答案:

答案 0 :(得分:1)

GNU tar命令具有选择存档成员的选项:--add-fileSection 6.2 of the manual提到了这一点:

  

如果文件名以破折号(-)开头,请在文件名前加上--add-file选项,以防止将其视为选项。

但是,它也适用于其他文件,这意味着您可以在任务的extra_opts中指定此选项以选择要提取的文件或目录:

unarchive:
  remote_src: yes
  src: /ingres/ingres.tar
  dest: /ingres
  extra_opts:
    - "--add-file"
    - "install"