0
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

TeraTermマクロ:Cisco機器コンソール接続してログ取得の自動開始(出力Dirはマクロと同じ)

Last updated at Posted at 2019-01-27

TeraTermマクロ:Cisco機器コンソール接続してログ取得の自動開始(出力Dirはマクロと同じ)

  • 本ページはWindows10でCisco機へコンソール接続するためのTeraTermマクロを記載しています。
  • 本業がプログラマでは無いため、レベル的には高く無いと思います。
  • 実機での検証はしていますが、環境によって内容が変わることがあるため参考にする際は自己責任でお願いします。
  • Cisco機器へのコンソール接続とログ取得をするTeraTermマクロです。
  • ログは実行したマクロファイルと同じフォルダへ出力します。

検証に使用した機器

  • Ciscoルータ:CISCO892-K9 (IOS-Version 15.2(4)M3)
  • 検証用PC:Window10 (TeraTerm Version 4.100)
  • 汎用HUB:NEC IX2005のSW-HUBポートを使用

検証構成

CISCO892-K9 --- 汎用HUB --- Window10 PC

ログ保存名および保存フォルダ

ログ保存場所
実行したマクロファイルと同じフォルダへ出力します。

ログ保存名
ログ名の確認ボックスが表示されるので、ログ名を入力します。
※ログ保存名は「入力内容_YYYYMMDD_hhmmss.log」
※そのままEnterでもOK。その場合は「Console_YYYYMMDD_hhmmss.log」

TeraTermマクロの内容

COMxx_Cisco_ConsoleLogin-logopen_Log保存(同一Dir).ttl
;### Console接続情報の設定 ###
;# 接続情報の設定(環境に合わせて修正してください)
COM_PORT = '3'
LOGIN_ID = 'admin'
LOGIN_PW = 'log-pass'
ENABL_PW = 'en-pass'
LOG_FILE = 'C:\teraterm'


;# ~~~~以下は修正不要です。~~~~

;### Log保存先・LogNameの設定 ###
;# Log保存先 = このマクロと同じフォルダへ出力
;# LogName   = [BOXが出るので入力]_YYYYMMDD_hhmmss.log
getdir DIR
getdate DATETIME '_%Y%m%d_%H%M%S.log'
inputbox 'LogNameを入れてください※省略してEnterでも可'  'LogName' 'Console'
FULLPATH = DIR
strconcat FULLPATH '\'
strconcat FULLPATH inputstr
strconcat FULLPATH DATETIME

;### コンソール接続 ###
COMMAND = '/C=' 
strconcat COMMAND COM_PORT 

connect COMMAND


;### Logの取得開始 ###
loginfo logfilename
if result <> -1 then   ;# Logが取得中か未取得か確認
   logclose
   logopen FULLPATH 0 1   ;# 取得中→Log停止して再度Log取得を開始
else
   logopen FULLPATH 0 1   ;# 未取得→Log取得を開始
endif
sendln ''
pause 1

;### Login、enable、ter len 0 ###
;# Console接続後、プロンプトを見て動作を変えます。
;# Login後、既に"#"の場合にはLogopenのみ。
do
    wait 'Username:' '>' '#'
    if result == 0 then         ;# 0 = 何も表示されない場合
        end
    elseif result == 1 then     ;# 1 = [Username:]が表示された場合
        sendln LOGIN_ID
        wait 'Password:' 
        sendln LOGIN_PW
        wait '>'
        sendln 'enable' 
        wait 'Password:' 
        sendln ENABL_PW
    elseif result == 2 then     ;# 2 = [>]が表示された場合
        sendln 'enable' 
        wait 'Password:' 
        sendln ENABL_PW
    endif
loop while result == 3          ;# 3 =[#]が表示されたらLoopを抜ける

sendln 'terminal length 0'
sendln ''
sendln ''

以上です。

0
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?