找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2757|回复: 2

[脚本] queue tree下如何使用edit命令更改规则的值?

[复制链接]
发表于 2012-2-16 15:18:46 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

×
就是如何用脚本修改tree下的已经生成好了的规则
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 \
    max-limit=28M name=Class_A parent=global-in priority=8

我想做到到了某个时间点,就自动运行脚本把max-limit=28M 改成=18M
routeros
发表于 2012-2-16 15:20:55 | 显示全部楼层
是时间点还是时间范围?要是时间点

就要用到system scheduler里面的 start-time 但是要更新start-date 每天才能生效
routeros
回复

使用道具 举报

发表于 2012-2-16 15:31:39 | 显示全部楼层
本帖最后由 huigezi' 于 2012-2-16 15:43 编辑


/system scheduler
:foreach a in=[find] do={
set $a start-date=[/system clock get date]
}

粘贴以上脚本到system scheduler里面设置1-8个小时更新下start-date
然后粘贴以下脚本设置定时修改max-limit  之后自己再加个改回来


:foreach a in=[/queue tree find name=Class_A] do={
:if ([/queue tree get $a max-limit]!=18000000) do={
/queue tree set $a max-limit=18000000
}}

======================================要是按照时间段来判断修改比如19:00-20:00是18M

其他时间是28M 运行以下脚本 1-10分钟执行一次即可


:if ([:tostr [/system clock get time]]>"19:00:00" \
&& [:tostr [/system clock get time]] < "20:00:00") do={
:foreach a in=[/queue tree find name=Class_A] do={
:if ([:tonum [/queue tree get $a max-limit]]!=18000000) do={
/queue tree set $a max-limit=18000000
}}} else={
:foreach a in=[/queue tree find name=Class_A] do={
:if ([:tonum [/queue tree get $a max-limit]]!=28000000) do={
/queue tree set $a max-limit=28000000
}}}

routeros
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|小黑屋|软路由 ( 渝ICP备15001194号-1|渝公网安备 50011602500124号 )

GMT+8, 2024-6-29 09:07 , Processed in 0.045149 second(s), 4 queries , Gzip On, Redis On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表