批处理执行功能

概要

在外部存储中,放入罗列命令的文件(以下称为批处理文件),运行此文件记载的命令的功能。

可以根据设置由按压download按钮进行执行。命令的执行结果和log会以文件的形式写入外部存储中。从控制台的execute batch 命令也能执行。

以下列举使用本功能可以实现的示例。

  • 在没有PC的环境中,也能进行ping的连通性检查。
    • 在设置路由器时,大幅减少必要的安装和操作步骤。
  • 执行结果,设置内容和路由器的状态等可以以文件形式写入外部存储中。
    • 取出外部存储,可以在智能手机中确认操作log。

关于外部存储的基本的使用方法,按钮操作,LED和蜂鸣器的规格,SYSLOG信息的详细,请参考外部存储的使用

注意事项

本功能可执行的命令如下所示。

  • ping
  • ping6
  • 以show~开头的命令
  • copy config
  • copy exec

其他命令也可以执行,但是不保证所有的动作能正常运行。

本功能不可执行的命令如下所示。

  • administrator
  • cold start
  • exit
  • quit
  • 以less~开头的命令
  • telnet
  • remote setup briN
  • execute batch
  • usbhost use
  • sd use
  • http revision-up go
  • netvolante-dns go
  • sshd host key generate
  • http upload go
  • 使用了管道符"|"的命令("show log | grep ipsec"等)
  • 使用了输出至文件的">"的命令("show log > usb1:log.txt"等)

支持的机型和固件版本

在雅马哈路由器中,以下的机型和固件版本支持批处理文件执行功能。

机型 固件
RTX5000 Rev.14.00.15以后
RTX820 Rev.11.03.16以后
RTX1200 Rev.10.01.20以后

详细

准备批处理文件

在外部存储中,放入批处理文件(罗列了命令的文件)。
以文件名"command.txt",文本文件的形式保存。
读取的文件可以用external-memory batch filename 命令进行变更。使用此命令直接指定文件和变更文件名的情况,请参考后述的说明

在批处理文件中,雅马哈路由器的命令请逐行记录。
命令是逐行翻译的。
支持的命令以外的字符串被视为非法命令而被无视,会输出相对应的log。
以"#"开头的字符串也被当成命令行进行处理。
命令也会输出至log文件中。

关于ping命令和ping6命令,各自如下进行运行。

  • ping

    -c选项(执行次数)的设置值为(1..10)。省略时为10。
    -w选项(发送数据包的间隔秒数)的设置值(0.1..1.0)。省略时为1.0。

    没有指定-c、-w选项时,如下所示。
    (HOST:想要ping的终端的IP地址或者名称)

    ping -c 10 -w 1 HOST
    

    对指定的终端以1秒间隔执行10次。数据包两次发送之间,如果没有收到回信,会显示相应的信息。

  • ping6

    count参数(发送次数)的设置值为(1..10)。省略时为10。

    不指定count参数时,如下所示。
    (HOST:发送目标的IPv6地址或者名称)

    ping6 HOST 10
    

    对指定的终端执行10次。

如下所示为批处理文件的示例。

# 批处理文件例
show environment
show status lan1
show status pp 1
ping 192.168.100.2 #LAN的连通性确认
ping 192.168.0.1   #对端的连通性确认
show log

执行批处理文件

执行批处理文件有以下的方法。

  • 按下DOWNLOAD按钮
    • 如下,可以设置按下DOWNLOAD按钮时执行批处理文件。
      operation button function download execute batch
      operation execute batch permit on
      
    • 按下DOWNLOAD按钮3秒以上将会执行批处理文件。
      这时会响起"哔"的蜂鸣声,DOWNLOAD灯缓慢闪烁(※)、所有命令执行完成后,灯停止闪烁。
    • 批处理文件中记载的命令全都执行完成后,会响起"哔噗哔噗"的蜂鸣声。
    • 在执行中想要中断时,按下DOWNLOAD按钮1秒以上。
    • 发生错误而完成时,DOWNLOAD灯会闪烁。(※)
      按下DOWNLOAD按钮1秒以上可以解除错误状态。
    (※) 没有DOWNLOAD灯的机型,DOWNLOAD灯不会点亮,闪烁。
  • 通过execute batch 命令执行
    • 批处理文件中记载的命令全都执行完成后,会响起"哔噗哔噗"的蜂鸣声。
    • 想要中断执行时,请输入Ctrl+C。

执行结果的确认

批处理文件中记载的执行结果,会输出在批处理文件所处目录的"command-log.txt"文件中。
这个文件名可以通过external-memory batch filename 命令改变。

执行完批处理文件的话,持续按住外部存储按钮2秒,确认外部存储灯熄灭后,可以取下外部存储。取下的外部存储里的执行结果文件可以通过智能手机等的其他设备确认其中的内容。

执行结果文件的示例

执行结果文件中会写入以下内容。

  • 显示了执行批处理文件的log
  • 批处理文件执行的命令
  • 批处理文件执行的命令的执行结果(和在控制台中显示的相同)
  • 在批处理文件中记载了本功能支持的以外的字符串时,显示其错误的log

执行以下批处理文件时的执行结果文件如下所示。

批处理文件:

# 批处理文件例
show environment
show status lan1
show status pp 1
ping 192.168.100.2 #LAN的连通性确认
ping 192.168.0.1   #对端的连通性确认
show log
sd use off         #无法执行的命令的例

执行结果文件:

2008/11/04 11:15:07: Execute batch file "sd1:/command.txt"
2008/11/04 11:15:07: # 批处理文件例

2008/11/04 11:15:07: show environment
RTX1200 BootROM Ver.1.00
RTX1200 Rev.10.01.07 (Thu Oct  9 18:53:33 2008)
  main:  RTX1200 ver=xxx serial=xxxx MAC-Address=00:a0:de:xx:xx:xx MAC-Address=00:a0:de:xx:xx:xx MAC-Address=00:a0:de:xx:xx:xx
CPU:   0%(5sec)   1%(1min)   0%(5min)    メモリ: 18% used
Firmware: exec0  Config. file: config0
Default firmware: exec0  Default config. file: config0
Boot time: 2008/11/04 11:11:31 +09:00
Current time: 2008/11/04 11:15:07 +09:00
Elapsed time from boot: 0days 00:03:36
Security Class: 1, FORGET: ON, TELNET: OFF
Inside Temperature(C.): 38

2008/11/04 11:15:07: show status lan1
LAN1
Description:
Ethernet Address:           00:a0:de:xx:xx:xx
Operation mode setting:                 Type (Link status)
               PORT1:           Auto Negotiation (1000BASE-T Full Duplex)
               PORT2:           Auto Negotiation (Link Down)
               PORT3:           Auto Negotiation (Link Down)
               PORT4:           Auto Negotiation (Link Down)
               PORT5:           Auto Negotiation (Link Down)
               PORT6:           Auto Negotiation (Link Down)
               PORT7:           Auto Negotiation (Link Down)
               PORT8:           Auto Negotiation (Link Down)
Maximum Transmission Unit(MTU):            1500 octets
Promiscuous mode:           OFF
Transmitted:                   8 packets(2052 octets)
  IPv4(all/fastpath):      3 packets / 0 packets
  IPv6(all/fastpath):      1 packets / 0 packets
Received:                   50 packets(7417 octets)
  IPv4:                         42 packets
  IPv6:                         0 packets
Non support packet received:       3

2008/11/04 11:15:07: show status pp 1
PP[01]:
Current PPPoE session status is Connected.
Access Concentrator: mopera.net
2 minutes 14 seconds  connection.
Received: 36128268 packets [1336521824 octets]  Load: 3.9%
Transmitted: 3092754 packets [3880305522 octet]  Load: 0.1%
PPP Cofigure Options
    LCP Local: Magic-Number ACCM ACFC PFC, Remote: CHAP ACCM ACFC PFC
    IPCP Local: IP-Address Primary-DNS(xxx.xxx.xxx.xxx) Secondary-DNS(xxx.xxx.xxx.xxx), Remote: IP-Address
    PP IP Address Local: xxx.xxx.xxx.xxx, Remote: xxx.xxx.xxx.xxx
    CCP: None
    

2008/11/04 11:15:07: ping -c 10 192.168.100.2 #LAN的连通性确认
received from 192.168.100.2: icmp_seq=0 ttl=127 time=0.775ms
received from 192.168.100.2: icmp_seq=1 ttl=127 time=0.468ms
received from 192.168.100.2: icmp_seq=2 ttl=127 time=0.485ms
received from 192.168.100.2: icmp_seq=3 ttl=127 time=0.474ms
received from 192.168.100.2: icmp_seq=4 ttl=127 time=0.481ms
received from 192.168.100.2: icmp_seq=5 ttl=127 time=0.470ms
received from 192.168.100.2: icmp_seq=6 ttl=127 time=0.486ms
received from 192.168.100.2: icmp_seq=7 ttl=127 time=0.487ms
received from 192.168.100.2: icmp_seq=8 ttl=127 time=0.470ms
received from 192.168.100.2: icmp_seq=9 ttl=127 time=0.471ms

10 packets transmitted, 10 packets received, 0.0% packet loss
round-trip min/avg/max = 0.468/0.506/0.775 ms

2008/11/04 11:15:17: ping -c 10 192.168.0.1   #对端的连通性确认
received from 192.168.0.1: icmp_seq=0 ttl=254 time=149.662ms
received from 192.168.0.1: icmp_seq=1 ttl=254 time=140.139ms
received from 192.168.0.1: icmp_seq=2 ttl=254 time=160.076ms
received from 192.168.0.1: icmp_seq=3 ttl=254 time=140.028ms
received from 192.168.0.1: icmp_seq=4 ttl=254 time=149.911ms
received from 192.168.0.1: icmp_seq=5 ttl=254 time=239.826ms
received from 192.168.0.1: icmp_seq=6 ttl=254 time=249.740ms
received from 192.168.0.1: icmp_seq=7 ttl=254 time=250.657ms
received from 192.168.0.1: icmp_seq=8 ttl=254 time=149.603ms
received from 192.168.0.1: icmp_seq=9 ttl=254 time=139.543ms

10 packets transmitted, 10 packets received, 0.0% packet loss
round-trip min/avg/max = 139.543/176.918/250.657 ms

2008/11/04 11:15:27: show log
2008/11/04 11:11:39: [DHCPD] Allocates 192.168.100.2: xx:xx:xx:xx:xx:xx
2008/11/04 11:11:42: [IKE] initiate ISAKMP phase to xxx.xxx.xxx.xxx (local address 192.168.100.1)
2008/11/04 11:12:50: PP[01] IP Commencing: UDP 192.168.100.1:500 > xxx.xxx.xxx.xxx:500
2008/11/04 11:12:50: PP[01] Calling mopera.net with usb1(foma)
2008/11/04 11:12:50: USB[1] SEND [ATD186*99***3#]
2008/11/04 11:12:53: USB[1] RECV [CONNECT 3648000]
2008/11/04 11:12:53: USB[1] Connected 3648000 bps
2008/11/04 11:12:54: PP[01] PPP/IPCP up  (Local: xxx.xxx.xxx.xxx, Remote: xxx.xxx.xxx.xxx)
2008/11/04 11:13:21: [IKE] respond ISAKMP phase to xxx.xxx.xxx.xxx
2008/11/04 11:13:23: [IKE] initiate IPsec phase to xxx.xxx.xxx.xxx
2008/11/04 11:13:25: IP Tunnel[1] Up
2008/11/04 11:13:26: [IKE] respond IPsec phase to xxx.xxx.xxx.xxx
2008/11/04 11:14:19: [SD] device attached : vendor=0x058f <Generic>, product=0x6335 <Mass Storage Device>
2008/11/04 11:14:20: [SD] microSD card is attached
2008/11/04 11:15:07: [SD] Batch-log file was opened("sd1:/command-log.txt")
2008/11/04 11:15:07: [SD] Execute batch file "sd1:/command.txt"

2008/11/04 11:15:27: sd use off         #无法执行的命令的例
invalid command or parameter

变更批处理文件的文件名和log文件的文件名

在出厂状态下,以"command.txt"为批处理文件,从外部存储中读取。这个文件名可以通过external-memory batch filename 命令进行变更。

例:从microSD卡的文件名为"command_hoge.txt"的批处理文件中读取

# external-memory batch filename sd1:command_hoge.txt

执行上述的设置例的操作的话,会在microSD卡自动检索"command_hoge.txt",并执行该文件记载的命令。如果事先知道文件的存放地址的话,可以通过绝对路径指定文件场所来缩短检索的time。关于文件的自动检索,详细请参考外部存储的使用的资料。

执行结果的log文件会以"(批处理文件名)-log.txt"的文件名,存储在外部存储的批处理文件的相同的目录中。上述的例子的设置中,在microSD卡内的"command_hoge.txt"的同目录中,生成"command_hoge-log.txt"的log文件。

通过相同的命令也可以变更log文件的文件名。

例:从microSD卡中读取名为"command_hoge.txt"的批处理文件,结果输出至"command.log"

# external-memory batch filename sd1:command_hoge.txt command.log

执行上述的设置例的操作的话,执行了"command_hoge.txt"的命令,其结果会在"command_hoge.txt"的同目录中生成"command.log"的log文件。

特殊事项

  • 外部存储中已经存在了和执行结果的文件名同名的文件时,执行结果会在该文件的末尾处追加。
  • 无法追加执行结果文件时,不进行覆盖等操作。如有必要,请删除文件以确保有足够的存储容量。
  • 通过命令来执行批处理文件时,SYSLOG中的设备名为"GENERAL"。
    例 : 执行"save"命令时
    Configuration saved in "CONFIG0" by GENERAL

命令格式

执行批处理文件

[格式]

execute batch

[设置值]

[说明]

执行外部存储中的批处理文件。被执行的批处理文件名可以通过 external-memory batch filename 命令来指定。

[适用机型]

RTX5000RTX1200RTX820

批处理文件和执行结果文件的设置

[格式]

external-memory batch filename BATCHFILE [LOGFILE]
no external-memory batch filename [BATCHFILE [LOGFILE]]

[设置值]

  • BATCHFILE ... 批处理文件名 (半角64字符以内)
    • usb1:FILENAME ... 连接在USB端口1的USB存储中的批处理文件名
    • sd1:FILENAME ... microSD卡中的批处理文件名
    • *:FILENAME ... USB存储或microSD卡中的批处理文件名
  • LOGFILE
    • FILENAME ... 执行结果文件名 (半角64字符以内)

[说明]

指定外部存储中的批处理文件名和执行结果文件名。

BATCHFILE中指定 "*:" 时,首先在microSD卡中进行检索,没有指定的文件时,再在连接在USB端口的USB存储中进行检索。

FILENAME可以通过使用绝对路径的文件名,或者只有文件名进行指定。只通过文件名来指定批处理文件时,会在外部存储中自动检索。存在多个文件时,会选择在目录层次上最靠近根目录,字母顺序优先的目录中的文件。

LOGFILE省略时,会生成"批处理文件名-log.txt"的执行结果文件。

[默认值]

BATCHFILE ... *:command.txt (RTX1200, RTX820)
BATCHFILE ... sd1:command.txt (RTX5000)
LOGFILE ... command-log.txt

[Note]

RTX1200 Rev.10.01.33 以后、和Rev.11.03 系以后中,BATCHFILE的FILENAME的指定字符数为,指定LOGFILE时,半角99字符以内。省略LOGFILE时,除去后缀名半角91字符以内。

[设置例]

  1. 在microSD卡的文件中检索名为"command_hoge.txt"的批处理文件。
    # external-memory batch filename sd1:command_hoge.txt
    
  2. 在microSD卡的目录"dir1"中读取"command_hoge.txt"。
    # external-memory batch filename sd1:/dir1/command_hoge.txt
    

[适用机型]

RTX5000RTX1200RTX820

设置按下DOWNLOAD按钮时执行的功能

[格式]

operation button function download FUNCTION
no operation button function download [FUNCTION]

[设置值]

  • FUNCTION ... 按下DOWNLOAD按钮时执行的功能
    • http revision-up ... HTTP版本升级
    • execute batch ... 批处理的执行

[说明]

设置按下DOWNLOAD按钮时执行的功能。功能执行中,DOWNLOAD按钮下方的灯会点亮,功能字形完成后熄灭。

[Note]

没有DOWNLOAD灯的机型,DOWNLOAD灯不会点亮和熄灭。

[默认值]

http revision-up

[适用机型]

RTX1200RTX820

设置是否允许通过DOWNLOAD按钮来执行批处理文件

[格式]

operation execute batch permit PERMIT
no operation execute batch permit [PERMIT]

[设置值]

  • PERMIT
    • on ... 允许通过DOWNLOAD按钮来执行批处理文件
    • off ... 不允许通过DOWNLOAD按钮来执行批处理文件

[说明]

设置是否允许通过DOWNLOAD按钮来执行批处理文件。

[默认值]

off

[适用机型]

RTX1200RTX820

返回顶部Return to Top