xlogin でコマンド自動投入→手動制御 を繰り返す
- コマンド群を入れる
- 手動制御
- 別のコマンド群を入れる
- 手動制御
- …
を大量デバイス上でやりたい、ということがありました。
これを少しいじると便利になります。
# configure.tcl source [file join [file dirname [info script]] juniper.tcl] run "configure set interfaces ge-0/0/0 description foo show | compare commit check " run " set interfaces ge-0/0/1 description bar show | compare commit check " run " exit show chassis routing-engine "
run
の中身を入れ終わった後に手動制御になり、^n
キーで自動制御に戻って次のrun
に移ります。
configure.tcl
の隣に juniper.tcl を置いておいてください。
実行例
codeout $ jlogin -s configure.tcl 192.168.0.81 192.168.0.81 set cli complete-on-space on Enabling complete-on-space codeout@vsrx> configure Entering configuration mode [edit] codeout@vsrx# set interfaces ge-0/0/0 description foo [edit] codeout@vsrx# show | compare [edit interfaces ge-0/0/0] - description "new 1"; + description foo; [edit] codeout@vsrx# commit check configuration check succeeds [edit] codeout@vsrx# <-- ここで手動制御に [edit] codeout@vsrx# commit commit complete [edit] codeout@vsrx# <-- ^n で自動に戻す [edit] codeout@vsrx# set interfaces ge-0/0/1 description bar [edit] codeout@vsrx# show | compare [edit interfaces ge-0/0/1] - description "new 2"; + description bar; [edit] codeout@vsrx# commit check configuration check succeeds [edit] codeout@vsrx# <-- ここで手動制御に [edit] codeout@vsrx# commit commit complete [edit] codeout@vsrx# <-- ^n で自動に戻す [edit] codeout@vsrx# exit Exiting configuration mode codeout@vsrx> show chassis routing-engine Routing Engine status: Total memory 2048 MB Max 635 MB used ( 31 percent) Control plane memory 1150 MB Max 449 MB used ( 39 percent) Data plane memory 898 MB Max 189 MB used ( 21 percent) CPU utilization: User 0 percent Background 0 percent Kernel 0 percent Interrupt 0 percent Idle 100 percent Model FIREFLY-PERIMETER RE Start time 2017-06-13 14:34:07 UTC Uptime 5 minutes, 48 seconds Last reboot reason Router rebooted after a normal shutdown. Load averages: 1 minute 5 minute 15 minute 0.01 0.10 0.07 codeout@vsrx> <-- ここで手動制御に codeout@vsrx> % codeout $
jlogin の例でした。