Dzisiaj odkryjemy kolejny filtr narzędzia Ansible, którym jest filtr wyszukiwania od regularności. Odkryjemy, jak funkcjonuje wyszukiwanie regularności Ansible. Zbadamy również, w jaki sposób wyszukiwanie Regex może być przydatne podczas korzystania z Ansible do znalezienia pasującego sznurka lub postaci w Ansible Playbook.
W Ansible Reg-Ex oznacza wyrażenie regularne, a wyszukiwanie oznacza coś, aby coś znaleźć. Tak więc filtr Regex_Search w Ansible jest rodzajem skanowania, który szuka poszczególnych sekwencji, a nie poszczególnych słów i wyrażeń. Zamiast tworzyć wiele dosłownych zapytań wyszukiwania, Regex umożliwia znalezienie określonego ciągu znaków za pomocą wyrażeń regularnych. Aby odzyskać określoną sekwencję, Regex współpracuje z zapytaniem i metacharacterami. Podstawowe elementy budowlane wyrażenia regularnego to Metacharacters. Znalezienie określonych strin, takich jak numery bezpieczeństwa, numery licencji, adresy stron internetowych, adresy mailingowe, numery rejestracyjne itp., Które pasują do określonych sekwencji, można wykonać za pomocą wyrażeń regularnych.
Parametry Regex_Search
Parametr jest unikalnym typem zmiennej, która jest stosowana przez dowolny filtr, wtyczkę itp. W celu odnoszenia się do określonego bitu danych podanych filtra jako wartości wejściowej w Ansible. Te fragmenty informacji wskazują wartości parametrów, które zostaną użyte do wykonywania lub inicjowania filtra. Poniżej znajdują się wymagane i opcjonalne parametry, których zamierzamy użyć podczas korzystania z filtra Regex_Serachh w Playbooku Ansible.
Wymagane parametry
Poniżej znajdują się parametry, które są wymagane, abyśmy mogli znaleźć wzór w dostarczonym ciągu.
Ciąg wejściowy: Przyjmiemy dane wejściowe jako ciąg, abyśmy mogli znaleźć wzór na nim.
Opcjonalne parametry
Są to parametry, których użyjemy, jeśli będzie potrzeba podczas wyszukiwania określonego wzoru z ciągu wejściowego.
Ciąg Regex: Regex jest wyrażeniem regularnym, które zawiera ciąg i określa pasujący wzór podczas filtrowania.
IgnorCase: To parametr logiczny. Jeśli ciąg wyrażeń regularnych jest prawdziwy, sprawi, że sprawa wyszukiwania jest wrażliwość i jeśli nie jest to prawdą, będzie zmuszony do rozwspialeziania się przypadków.
Multiline: Jest to także parametr logiczny wyszukiwania regularnego w Ansible. Jeśli skan jest prawdziwy, wyszukiwanie zakończeń linii i jeśli jest to fałszywe, nie będzie szukać zakończenia linii.
Wymagania wstępne filtra ansible Regex_search
Jeśli chcesz kontynuować wyszukiwanie regularne, założymy, że spełniasz następujące warunki wstępne, które podano poniżej:
Po prostu zagłębiajmy się w filtr wyszukiwania regularnego i sprawdźmy, w jaki sposób Ansible go wdraża, używając kilku sytuacji.
Przykład 01: Dopasowanie ciągu „dwa” za pomocą filtra wyszukiwania Regex
Oto pierwszy przykład, w którym znajdziemy „Dwa sznurki z przykładowego dokumentu, który został już utworzony i zawiera w nim niektóre ciągi. Kiedy chcemy wykonać filtry w Ansible, potrzebujemy podręcznika, w którym piszemy zadania. Aby to zrobić, następujące stwierdzenie, których zamierzamy użyć do utworzenia podręcznika w Ansible.
[root@master ansible]# nano Regex_search.ymlTeraz podręcznik jest inicjowany w nowym terminalu Ansible. Zacznijmy pisać wymagane instrukcje w podręczniku, abyśmy mogli uruchomić filtr. Najpierw napiszmy nazwę urządzenia hosta, w którym chcemy skonfigurować filtr wyszukiwania Regex. Używamy lokalnego hosta do wdrożenia filtra. Otrzymamy tylko wymagane dane lokalnego hosta, więc mamy fałszywe opcję gromadzenia. W pierwszym zadaniu otrzymaliśmy dane z próbki.Dokument TXT, a następnie przechowywał go w zmiennej „out”, która została zadeklarowana za pomocą opcji rejestru podręcznika. Następnie debugujemy zadanie, abyśmy mogli przeszukać ciąg „Dwa” z zawartości zmiennej out i wyświetlić go na terminalu konsolowym Ansible.
- Gospodarze: LocalhostKolejnym krokiem jest wykonanie następującego wiersza, aby uzyskać frazę, która ma ciąg „dwa”, po napisaniu zadań dla podręcznika.
[root@master ansible]# ansible-playbook Regex_search.ymlWyrażenie ze zmiennej out, która zawiera słowo „dwa” jest wyświetlane w wyjściu za pomocą filtra wyszukiwania regularnego, który został pomyślnie wykonany i można je zobaczyć za pomocą sygnału OK.
Przykład 2: Pokaż ciąg „Plik” ze zadeklarowanej zmiennej w Ansible
Teraz zamierzamy zaimplementować drugi scenariusz, w którym chcemy znaleźć dane ze zadeklarowanej zmiennej w Ansible. Najpierw ponownie otworzymy podręcznik:
[root@master ansible]# nano Regex_Searcg.ymlW tym przykładzie zadeklarowaliśmy nazwę zmiennej „my_var”, a następnie zapisaliśmy treść w zmiennej. Teraz chcemy uzyskać określony ciąg ze zmiennej, abyśmy musieli zdefiniować zadanie w podręczniku. Jak pokazano, użyliśmy również opcjonalnych parametrów filtra Regex_Search w opcji debugowania na końcu podręcznika. Te parametry są parametrem wielopoziomowym i ignorcase, który zawiera wartość „prawdziwej”.
- Gospodarze: LocalhostTeraz wykonamy podręcznik i zaprezentujemy wyniki podręcznika w terminalu:
[root@master ansible]# ansible-playbook Regex_search.ymlOto pożądane wyniki pokazane poniżej:
Wniosek
Dokonaliśmy szczegółowych informacji o tym, czym jest filtr wyszukiwania regularnego w Ansible i jak korzystać z filtra w podręczniku Ansible i co otrzymamy w zamian. Aby poprawnie zrozumieć filtr wyszukiwania Ansible Regex, wykorzystaliśmy kilka przypadków.