скрипт для поднятия интерфейса при подключении юсб флэшки..
Добавлено: 09 мар 2025, 20:43
Нужна помощь со скриптом. Задача: при подключении юсб флэшки поднимать вайвай интерфейс, а при отключении диска, гасить его. С написанием сталкиваюсь первый раз. Опыта "0". Попытался склеить на основании ответов из чатгпт. Логика вроде ок, но не работает. Вопрос думается в неправильном написании.
/system script add name=usb_control source={
:local diskStatus [/system disk find name="disk1"];
:local wifiStatus [/interface wireless get [find] disabled];
:if ($diskStatus = "ready") do={
:if ($wifiStatus = yes) do={
/interface wireless set [find] disabled=no;
:log info "Disk WaF on, WiFi-ON";
}
} else={
:if ($wifiStatus = no) do={
/interface wireless set [find] disabled=yes;
:log info "Disk WaF off, WiFi-OFF";
}
}
}
/system scheduler add name=usb_check \
start-time=00:00:00 \
interval=10s \
on-event="/system script run usb_control" \
policy=read,write,test,policy
/system script add name=usb_control source={
:local diskStatus [/system disk find name="disk1"];
:local wifiStatus [/interface wireless get [find] disabled];
:if ($diskStatus = "ready") do={
:if ($wifiStatus = yes) do={
/interface wireless set [find] disabled=no;
:log info "Disk WaF on, WiFi-ON";
}
} else={
:if ($wifiStatus = no) do={
/interface wireless set [find] disabled=yes;
:log info "Disk WaF off, WiFi-OFF";
}
}
}
/system scheduler add name=usb_check \
start-time=00:00:00 \
interval=10s \
on-event="/system script run usb_control" \
policy=read,write,test,policy