Пример программы на SLAX: различия между версиями

Материал из Juniper Exam Wiki
Перейти к навигации Перейти к поиску
 
Строка 25: Строка 25:
=Полезные ссылки=
=Полезные ссылки=
* [https://github.com/phylocko/slax-tools Скрипты для автоматизации рутинных задач в JunOS]
* [https://github.com/phylocko/slax-tools Скрипты для автоматизации рутинных задач в JunOS]
=Дополнительная информация=
*[[Общие сведения об автоматизации в JunOS]]
*[[Основы автоматизации на SLAX]]

Текущая версия на 18:08, 15 июля 2021

Пример

Например нам требуется выцепить только список интерфейсов, начинающихся с "ge-" и не имеющих "mtu 1500".

match / {
	<op-script-results> {
		var $results = jcs:invoke("get-interface-information");
		/* Первое условие, проверка на наличие «ge-» */
		for-each ( $results/physical-interface[starts-with (name, "ge-")]) {
			/* Второе условие, проверка на отсутствие «mtu 1500» */
			for-each (./logical-interface[jcs:empty(address-family[mtu == "1500"])]) {
				<output> "Interface " _ ./name _ " has no mtu 1500"; }}}}

Вывод всех ge- интерфейсов из mtu:

Interface ge-0/0/0.60 has mtu 1500
Interface ge-0/0/0.80 has mtu 1400
Interface ge-0/0/0.100 has mtu 1500
Interface ge-0/0/0.110 has mtu 1500
Interface ge-0/0/0.32767 has mtu
Interface ge-0/0/1.0 has mtu 1500 

Вывод с нашим условием:

Interface ge-0/0/0.80 has no mtu 1500
Interface ge-0/0/0.32767 has no mtu 1500

Полезные ссылки

Дополнительная информация