Всем привет! Я написал скрипт для очистки соединений в файрволе. Он работает нормально, но иногда выдаёт ошибку: no such item (4). Думаю, это связано с тем, как RouterOS обрабатывает список соединений. Вот сам скрипт:
:local ConnectionList [/ip firewall connection find]
:foreach Connection in=[$ConnectionList] do={/ip firewall connection remove $Connection}
Похоже, что между тем, как мы сохраняем соединения в массив и пытаемся их удалить, какое-то соединение закрывается, и команда remove пытается удалить уже несуществующее соединение, из-за чего и выскакивает ошибка. Я пробовал добавить условие on-error={…}, но никак не получилось — постоянно синтаксические ошибки.
Кто-нибудь может подсказать, как можно либо предотвратить эту ошибку, либо корректно её обработать? Спасибо!
:local ConnectionList [/ip firewall connection find]
:foreach Connection in=[$ConnectionList] do={/ip firewall connection remove $Connection}
Похоже, что между тем, как мы сохраняем соединения в массив и пытаемся их удалить, какое-то соединение закрывается, и команда remove пытается удалить уже несуществующее соединение, из-за чего и выскакивает ошибка. Я пробовал добавить условие on-error={…}, но никак не получилось — постоянно синтаксические ошибки.
Кто-нибудь может подсказать, как можно либо предотвратить эту ошибку, либо корректно её обработать? Спасибо!

