Anstatt die Ansible Module shell oder command zu verwenden, versuche ich die find module zu verwenden, um alte Backup-Verzeichnisse zu löschen und nur die neuesten n
Backups zu behalten. Derzeit ich den folgenden Code verwenden, um eine Liste aller Backup-Verzeichnisse zu erhalten (so dass in einem zweiten Schritt, den ich die unerwünschten gelöscht haben könnte):Wie kann man die Ergebnisse des Moduls Ansible find eingrenzen?
- find:
paths: "/opt/"
patterns: "backup_*"
file_type: "directory"
Leider habe ich sehe keinen Weg hinunter einzuengen die resultierende Liste von Verzeichnissen ...
- Das Suchmodul scheint Sortierung nicht zu unterstützen ... kann das in irgendeiner Weise gemacht werden?
- Bietet Ansible jede Möglichkeit, eine JSON-Liste zu manipulieren ... nur
n
Elemente in einer Liste zu behalten und alle anderen zu entfernen?
Hat jemand das Suchmodul für ähnliche Zwecke erfolgreich verwendet?
Sind diese Befehle 'sort',' map' und 'list' irgendwo dokumentiert? Ich bekomme einen Fehler "" Template-Fehler beim Templating String: kein Filter mit dem Namen 'map' " – dokaspar
auch, das' [: -3] 'tut wirklich nichts ... immer wird die vollständige Liste gedruckt – dokaspar
ja, http: //jinja.pocoo.org/docs/dev/templates/#list-of-builtin-filters und http://docs.ansible.com/ansible/playbooks_filters.html –