OpenWRT用shell uci set控制LED燈
阿新 • • 發佈:2020-10-25
i.參考資料
不排除偶爾可能需要在shell裡實時控制路由器上指示燈的需要。不過找了一下好像並沒有什麼相關的教程,於是乎就把自己的一種方法寫在這。
在LuCI裡配置各個指示燈
LuCI的系統-LED配置裡可以很方便地設定LED引數,那麼我們就可以在這裡先設定好,然後以後用uci set去改。如圖:
比如像我在這裡就把藍色燈起名為ledblue,紅燈ledred,黃燈ledyellow。那麼按照從上到下的順序,uci就會識別為 system.@led[0],system.@led[1],system.@led[2]...對應地,也就是system.@led[0].name='ledblue',system.@led[1].name='ledred',system.@led[2].name='ledyellow'...
下面的預設狀態就是開關了,觸發器也暫時用不到。往後我們就可以通過uci set來控制指示燈了。
使用uci set控制指示燈
比如說現在需要關掉藍色燈,那麼就執行
root@MiWiFi:~# uci set system.@led[0].default='0' #將system.@led[0](藍色燈)的default(預設狀態)改為0(即關閉)
root@MiWiFi:~# uci commit #提交更改
root@MiWiFi:~# /etc/init.d/led reload #重新載入裝置
這樣就算實現在shell裡實時控制指示燈了(雖然有些低效。。。),可以寫進指令碼或程式裡。