找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 18028|回复: 45

[脚本] 脚本可以得到的数据--日期,时间等对像[脚本贴]---脚本的风采

[复制链接]
发表于 2007-1-21 22:50:26 | 显示全部楼层 |阅读模式

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

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

×
哪为大侠可以写下,用脚本可以得到哪些数据,比如时间,日期,DNS解析时间等
ping的返回值,谁知道怎么写
routeros
发表于 2007-1-24 14:12:23 | 显示全部楼层
不用找高手,只要懂点编程常识就行
我再直接点回答问题
————只要可以GET的东西就可以,但绝对与PRINT是无关的(也就是L7所说的所谓静态的东西)

原因:
PRINT的东西可能很长,因此,从程序角度来看,很难通过它来实现,可变长的东西在底层实现不是那么容易的
因此,靠脚本实现直接得到 IP ADD PR的输出是不现实的(是否还记得,很长的输出,ROS通常是分页显示的?)
正确的方法是(举例):
:local ipadd;
/ip ad
:set ipadd [get [find interface=ether3] add]
:put $ipadd


同理,想得到类似/interface monitor-traffic Lan once输出的数据,它实际上也是PR的结果,不能直接引用,要变通
如:

:local rate;
##需要先建立一个不限速的queue
/queue simple
reset-counters-all
##WAIT A MIN
:set rate [get [find name=("aaa")] rate]
:put $rate
:local traf;
:set traf [get [find name=("aaa")] byte]
:put $traf
:local pack;
:set pack [get [find name=("aaa")] pack]
:put $pack

##如果嫌输出的东西有两个值,可以在前面加上TOTAL-
总之,看问题需要多想基本原理,不能就事论事一相情愿。
:put http://www.sina.com.cn
:put 成本核算.xls
就能上网、办公,这不是绝对不行,但对ROS来说不太现实

————ROS的变量,只要可以GET的东西就可以,但绝对与PRINT是无关的(不嫌重复吧?)

[ 本帖最后由 parphy 于 2007-1-24 14:21 编辑 ]
routeros
回复 1 0

使用道具 举报

发表于 2007-1-22 13:10:31 | 显示全部楼层
太多了。怎么写呀
在命令行下能显示的数据,几乎都能得到。有些不行
routeros
回复

使用道具 举报

发表于 2007-1-22 13:13:04 | 显示全部楼层
WINBOX能得到的,基本上都能得到,哈哈
routeros
回复

使用道具 举报

 楼主| 发表于 2007-1-22 21:30:47 | 显示全部楼层
没一个说方法
ping的返回值,怎么得
routeros
回复

使用道具 举报

发表于 2007-1-23 13:47:16 | 显示全部楼层
请大侠们指点一下,怎么得到啊
routeros
回复

使用道具 举报

发表于 2007-1-24 12:19:33 | 显示全部楼层
时间:
:global ddd
:set ddd  [/system clock get time]
:put $ddd

日期:
:global ddd
:set ddd  [/system clock get date]
:put $ddd

DNS解析时间:
目前做不鸟,
DNS不是ROS的必备功能,提供DNS CACHE就已经不错了,至于解析速度问题,那是专用网管系统性能分析子模块的事情

ping的返回值:
让人怀疑到底提问的人是不是搞IT的,PING的返回值是一个多维数组,不通的时候要返回原因是TO还是DU还是什么其他的N种
通的时候又要告知没个PING包的返回值,返回者,跳数,包大小
这样一个复杂事情还要用脚本重复来做?ROS提供一个NETWATCH就已经很仗义了,如果还嫌不够,
:global ddd
:set ddd [ping X.X.X.X co=100]
:put $ddd
可以返回丢包率
其他的要求,是网管平台要做的,不是ROS,ROS只是台路由器

人,
总是贪婪的,要的太多,
而付出
太少

我希望有一天,ROS可以以这样的方式来运行:
1、加电启动
2、自动调整天线频率,分别与网通、移动、联通的客服系统寻价
3、发现价位最低的是联通后,与之自动签定接入合同,并通过刚开通的临时信道与所属银行联系拨款,款到后,联通自动为其开启宽带
4、用了3月后,ROS发现PING 的返回值已经达到惊人的5MS,立即自动向12315以及联通客服系统提起投诉
5、又过一周,发现PING值已经升高到8ms,ROS自动向联通发送合同终止书,并启用备用天线,与价位次低的网通签定试用协议
6、试用期间发现,小灵通的PING返回更是高达惊人的10.38ms,于是,ROS再次自动终止试用,并与移动取得业务联系
(注,此期间由于各运营商已经失去了对号码资源的垄断,而是由用户本人所有,因此转网无需换号)
7、网通和联通的ROS在网络状态连通,但无用户流量的情况下,毅然向发改委、证监委、国资委等相关部委发送申请破产、退市申请
...
到那时,网吧网管都恐怕要失业,只剩端茶倒水的份了
哦,不对,连打扫卫生的份都没了
1、装完ROS后,光驱没用了,正好可以做茶杯托架
2、万一客人撒了水,没关系,根据ROS的根据客户撒水的概率精确计算,撒的水刚好够液冷系统的补充了
routeros
回复

使用道具 举报

发表于 2007-1-24 12:34:39 | 显示全部楼层
:global ddd
:set ddd [ping X.X.X.X co=100]
:put $ddd
这样得到的只是ping的成功次数,没有别的内容
前楼的高人都说winbox能得到的数据、命令行显示的数据用脚本都能得到的。
我想得到/interface monitor-traffic Lan once输出的数据,请告知方法,谢谢!
楼上所举的例子只是些静态属性的值,换句话说只是能得到print命令输出的相应属性的值,除此之外的呢

[ 本帖最后由 yenan111 于 2007-1-24 12:40 编辑 ]
routeros
回复

使用道具 举报

发表于 2007-1-24 12:41:31 | 显示全部楼层
6楼的兄弟非常生气!哈哈
routeros
回复

使用道具 举报

发表于 2007-1-24 14:39:08 | 显示全部楼层
我有个建议,除非是绝对关键的应用,否则不必要完全指望脚本实现
如果对ROS的各种复杂功能感兴趣(尤其是自动配置),还不如另外写个控制程序
你可以卖点钱赚点加班费,也可以放出来供大家方便使用,或者干脆提交给MIKROTIK,让他们少在这方面浪费时间和精力,投入到更有价值的开发上去
routeros
回复

使用道具 举报

发表于 2007-1-24 14:58:57 | 显示全部楼层
楼上还是没有明白我的意思,这些方法当然能够实现了,能get到的当然不用再说了
楼主说的————只要可以GET的东西就可以,但绝对与PRINT是无关的(也就是L7所说的所谓静态的东西)我承认,我只是象征说明常规脚本能得到的数据。我想得到的是不能通过get得到的数据。

因为传闻都说几乎屏幕能输出的数据(winbox能得到的数据)用脚本都能得到,并且自己也是这样想的,当然winbox的dll函数里肯定有更方便的方法,但不是通过脚本能实现的。你如果能用脚本得到/interface monitor-traffic Lan once的输出数据我就佩服你五体投地,顺便一万个感谢。。。

[ 本帖最后由 yenan111 于 2007-1-24 15:13 编辑 ]
routeros
回复

使用道具 举报

发表于 2007-1-24 15:04:48 | 显示全部楼层
原帖由 yenan111 于 2007-1-24 14:58 发表
楼上还是没有明白我的意思,这些方法当然能够实现了,能get到的当然不用再说了
楼主说的————只要可以GET的东西就可以,但绝对与PRINT是无关的(也就是L7所说的所谓静态的东西)我承认,我只是象征说明常规 ...


那你赶紧五体投地吧

我就是用脚本来检测每个PPPOE通道的发包量,如果超过一定的数量,就把这个PPPOE给踢下线,达到避免被攻击的效果!

用的命令就是/interface monitor-traffic 命令
routeros
回复

使用道具 举报

发表于 2007-1-24 15:09:45 | 显示全部楼层
哎,我知道你们既然说出这话来肯定不是说大话了,但我没有琢磨透啊,看来还得花功夫
routeros
回复

使用道具 举报

发表于 2007-1-24 15:18:10 | 显示全部楼层
忘了补上佩服佩服,精品高人啊,是直接得到的吗?还是利用中转,比如上面楼主说的用/ques sim不限制得到该网卡的数据,然后读出来。即通过别的功能对数据进行镜像,然后再输出

[ 本帖最后由 yenan111 于 2007-1-24 15:27 编辑 ]
routeros
回复

使用道具 举报

发表于 2007-1-24 15:32:07 | 显示全部楼层
能否用脚本得到,关键是看ROS能否有你想要的数据的变量,如果有,那就直接可以用了 !

我说的WINBOX能显示的大部分能使用就是这个原因,当然,我也不敢说100%都能用,反正到目前为止我需要的都能得到,呵呵,不过,PING的TIME值没有发现有变量得到,没有仔细研究,没有什么必要的东西

那个是直接得到变量的值的
routeros
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-6-2 11:04 , Processed in 0.119364 second(s), 5 queries , Gzip On, Redis On.

Powered by Discuz! X3.5 Licensed

© 2001-2023 Discuz! Team.

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