TeratermマクロでSSH自動ログイン
面倒な定型処理をするときの備忘録
基本は2つ
- wait (イベント)
- sendln(アクション)
waitでイベントを待ち、受け取ったらsendlnでアクションする。
例) wait(waitファミリー) で Password: プロンプトが返ってきたら パスワード'hoge' を送る。
wait 'Password:' sendln 'hoge'
SSHでペアキーで自動ログインして、定型処理を行う
以下はmailq の数を表示するだけのサンプルコード
; ユーザ名と秘密鍵とコマンドライン ; 環境に合わせて設定してください。 username = 'username' private_key_file = 'C:\Program Files\teraterm\id_rsa.username' command_line = 'mailq | wc -l' ; 秘密鍵ファイルの確認 filesearch private_key_file if result = 0 then sprintf 'Private key not found!' error_msg = inputstr messagebox error_msg 'error' exit else messagebox 'keyfile found!' 'ok' endif ; サーバ inputbox 'hostname' 'Enter Hostname' hostname = inputstr ; パスワード getpassword 'password.dat' username password sprintf '%s /ssh /2 /auth=publickey /user=%s /passwd=%s /keyfile="%s"' hostname username password private_key_file connect_syntax = inputstr ; コネクト connect connect_syntax ; mailqの数 sendln command_line