Wie man Wildcard in ansible Befehlen erwähnt

8

Ich führe Shell-Befehle über Ansible aus.

Manchmal habe ich nicht den kompletten Ordnernamen. Angenommen, ich habe dirname solr4.7.0 .

In der Shell kann ich cd solr* eingeben.

Aber in Ansible kann ich nicht tun:

chdir=/var/solr*

Gibt es eine Problemumgehung?

    
user3147180 18.03.2014, 10:10
quelle

2 Antworten

10

Nein. Der chdir= -Parameter für z. B. das command -Modul unterstützt keine Platzhalter.

Mit einer Registervariablen können Sie erreichen, was Sie wollen, um die Ausgabe von ls zu speichern. Befehl:

%Vor%

Aber das ist, offen gesagt, eine hässliche Lösung. Sie verwenden den eigentlichen Verzeichnisnamen besser. Wenn es auf verschiedenen Hosts unterschiedlich ist, können Sie die Hostvariablen verwenden, um es entsprechend einzustellen.

    
larsks 18.03.2014, 11:45
quelle
8

Wie Larsks geschrieben hat, ist der Schlüssel register , aber der Code funktionierte nicht auf meiner aktuellen ansible-Version. Also hier ist einer korrigiert:

%Vor%     
Sasha 04.09.2015 11:32
quelle

Tags und Links