我对ansible相当陌生,目前正在尝试播放一个读取日志文件,在该文件中注册目录然后删除目录的剧本
现在,我可以获得正确的输出,并注册路径,但是删除部分却让我着迷
name:获取需要删除的目录的名称 外壳:grep“ Errno 21” /path/error.log | awk'{print $ 7}'| tr -d \' 注册:Errno21
调试: 味精:“ {{Errno21.stdout}}”
名称:删除目录 文件:path = {{{Errno21.stdout}} state =不存在
任务[删除文件] *********************************** 好的:
但是不会删除“目录”。
我怎么能告诉ansible这些是目录?我在想“ file_type:目录”,但是失败了。是模块吗?
答案 0 :(得分:0)
这是您要找的代码吗?
- name: Remove Directories
file:
path: "{{ item }}"
state: absent
loop: "{{ Errno21.stdout_lines }}"
回答您的问题:
我怎么能告诉ansible这些是目录?
没有理由明确指定项目为目录。 Ansible会自行发现。如果要删除目录,只需状态:不存在。 file模块对此很清楚
如果不存在,目录将被递归删除,...