TeraTermのマクロデビューしました。
TeraTermのマクロ機能はご存知でしょうか。
定型作業を自動化できる便利機能です。
何故、今更マクロを使うことになったかと言いますと・・・
20以上の拠点に入り回線を変更するという案件がありました。
ざっくりとした作業内容ですが、
- 事前ログ取得
- 設定変更
- 疎通試験
- 事後ログ取得
2.の設定変更以外は、どの拠点もほぼ同じコマンドであったため、
マクロを使えれば作業が飛躍的に楽になるなという考えからマクロを作成することに。
一部抜粋という形になりますが、
実際に作成したマクロ内容を紹介します。
●ログイン情報定義
HOSTNAME = 'ホスト名'
LOGIN_PW = 'ログインPW'
ENABL_PW = '特権PW'
●ボーレート定義
BAUDRATE = '9600'
※環境によって数値は合わせる
●コンソールログイン
①COMポートの状態を1~100まで確認する
for PORT_NUM 1 100
②整数値を文字列に変換
int2str COM_PORT PORT_NUM
③コマンド組立て
COMMAND = '/C='
strconcat COMMAND COM_PORT
strconcat COMMAND ' /BAUD='
strconcat COMMAND BAUDRATE
④接続
connect COMMAND
⑤接続確認
if result == 2 break
next
●ログイン
sendln ''
do
wait 'Password:' '>' '#'
if result == 0 then ; 何も表示されない場合
end
elseif result == 1 then ; [Password:]が表示された場合
sendln LOGIN_PW
wait '>'
sendln 'administrator'
wait 'Password:'
sendln ENABL_PW
elseif result == 2 then ; [>]が表示された場合
sendln 'administrator'
wait 'Password:'
sendln ENABL_PW
endif
loop while result == 2 ; [#]が表示されたらLoopを抜ける
●ログのファイル名設定と記録開始
ログを保存するパスの指定
getdir LOG_DIR_PATH
Strconcat LOG_DIR_PATH '\'
Strconcat LOG_DIR_PATH HOSTNAME
Strconcat LOG_DIR_PATH '_log\'
ログ名に利用する日付情報を取得する
Getdate Str_Getdate
Strcopy Str_Getdate 1 4 Str_Year
Strcopy Str_Getdate 6 2 Str_Mon
Strcopy Str_Getdate 9 2 Str_Day
ログ名に利用する時刻情報を取得する
Gettime Str_Gettime
Strcopy Str_Gettime 1 2 Str_Hour
Strcopy Str_Gettime 4 2 Str_Min
Strcopy Str_Gettime 7 2 Str_Sec
ログ名を生成する
LOG_PATH = LOG_DIR_PATH
Strconcat LOG_PATH '\'
Strconcat LOG_PATH '3-1_N101-109'
Strconcat LOG_PATH '-'
Strconcat LOG_PATH HOSTNAME
Strconcat LOG_PATH '_'
Strconcat LOG_PATH Str_Year
Strconcat LOG_PATH Str_Mon
Strconcat LOG_PATH Str_Day
Strconcat LOG_PATH '_'
Strconcat LOG_PATH Str_Hour
Strconcat LOG_PATH Str_Min
Strconcat LOG_PATH Str_Sec
Strconcat LOG_PATH '.txt'
ログの記録を開始する
logopen LOG_PATH 0 1
●実行コマンド
sendln ''
sendln 'show ip rip table'
pause 10
wait '#'
・
・
・
※必要なコマンドを追記していく
※機器によっては"wait '#'"が効かないため、pauseコマンドで次行コマンド実行までの間隔(秒数)を調整する。
●ログの記録終了とマクロ終了
logclose
End
1~2拠点くらいの作業であれば、マクロを作らなくても良いかなと思いますが、
今回は20以上の拠点で作業ということもあり、流石に作成しました。
実際、マクロを作成して使ってみた感想ですが、
とても便利ですね。
取得したログチェックに時間を多く使える点もメリットと感じました。
デメリットですが、もちろん事前にマクロを作りこむという手間がかかる点ですかね。
今は生成AIもありますので、AIがないときと比べれば楽だと思いますが。。。
今後の展望としては、楽にマクロを作るということにフォーカスを当てていき、
また共有できたらと思います。
コメント
コメントを投稿