2013年3月10日日曜日

teratermマクロ②(telnetログイン用)

なぜかsshでログインできないのでtelnetでログインする事に。

ついでなのでtelnet用のteratermマクロも作成しました。

コードが汚いとかは気のせいです。

あとエラー処理とか入れてないのも気のせいです。

できること:
 ・接続先ホスト手入力
 ・ログをyyyymmdd_<接続先ホスト>_<任意の文字>.logで自動出力
  ※ログの出力先はコード内で直指定してください(´・ω・`)

あとhostsに書くかDNSサーバにホストを書かないとホスト名でログインできません。

--------------------

; **********************************
; Filename    : telnet_login.ttl
; Filever     : 1.1
; Author      : kuma
; Created     : 2013/03/10
; modified    : 2013/03/10
; **********************************

; ログ出力先を指定
LogPath = 'C:\Documents and Settings\All Users\デスクトップ\'

; **********************************

; main
call SUBSETHOSTADD
call SUBSETTIME
call SUBSETUSER
call SUBSETLOGNAME
call SUBCONNECT
call SUBOUTPUTLOG

end


; 接続先HOSTを入力
:SUBSETHOSTADD
inputbox '接続先HOST' '接続先HOSTを入力してください'
HostAdd = inputstr
return


; 時間を取得
:SUBSETTIME
getdate datestr
strcopy datestr 1 4 YYYY
strcopy datestr 6 2 MM
strcopy datestr 9 2 DD
return


; ユーザ情報の取得
:SUBSETUSER
inputbox 'ユーザ' 'ログインユーザIDを入力してください'
UserName = inputstr
passwordbox 'パスワード' 'ログインパスワードを入力してください'
UserPassword = inputstr
return


; ログ名称入力
:SUBSETLOGNAME
inputbox 'ログ名称' 'ログ名称を入力してください'
TmpLogName = inputstr
return


; TELNET接続
:SUBCONNECT
COMMAND = HostAdd
strconcat COMMAND ':23 /nossh /T=1'
connect COMMAND
wait 'login:'
sendln UserName
wait 'Password:'
sendln UserPassword
return


; ログ出力設定
:SUBOUTPUTLOG
LogName = ''
strconcat LogName LogPath
strconcat LogName YYYY
strconcat LogName MM
strconcat LogName DD
strconcat LogName '_'
strconcat LogName HostAdd
strconcat LogName '_'
strconcat LogName TmpLogName
strconcat LogName '.log'
logopen LogName 0 1 0 1 1
return

--------------------











色々気のせいです。