使用 Ansible,我需要确保某个目录的所有子文件夹都不存在 除了少数,必须保留。
要保留的列表将在外部指定 - 例如,subfolders_to_keep
。我能看到的唯一方法是首先使用
-module枚举子目录,然后使用
file
删除所有不例外的内容 - 在循环中。
这将是一个相当长的循环——在 50 多个条目中,只有 4 个能够幸存。也许,还有更优雅的方式?
对,对性能有显着影响。请参阅示例这将是一个相当长的循环
Ansible:如何优化 playbook 的运行速度? 或 如何优化 Ansible playbook 的性能?
由于在您的特定用例中没有可用于此类任务的开箱即用模块还有更优雅的方式吗?
shell
模块 – 使用
find
或 rm
与排除一起在目标上执行 shell 命令。参见示例
find
排除某些文件
script
模块 – 传输后在远程节点上运行本地脚本。也许之前阅读过有关如何使用 Ansible 在远程服务器上执行
shell
脚本?.