公開鍵認証 TeraTerm 自動ログインマクロ【一休み】

掲示板の解説をしていきたいところですが、少々お待ち下さい。
もったいつけるようなソースでもないのですが、人に見せるとなるとやはり気を遣うものです。

そんな訳で掲示板のソースの編集作業の間に、表題のマクロを紹介したいと思います。今後掲示板を作成するにあたりTeraTermなどの仮想端末を利用して編集作業を行う方も多いはずだから、きっと役に立つことがあると思います。

TeraTermマクロ

コードはこんな感じです。

username = 'ユーザー名'
hostname = '宛先ホスト名orIPアドレス'
portnum = 'ポート番号(SSHなら22かその他のポート番号)'
userpassword = 'パスフレーズ'
keyfile = '"秘密鍵のパス"'
msg = hostname

strconcat msg ':portnum /ssh /auth=publickey /user='
strconcat msg username
strconcat msg ' /passwd="'
strconcat msg userpassword
strconcat msg '"'

strconcat msg ' /keyfile='
strconcat msg keyfile

connect msg

あえて説明することもないと思いますが1~6行目は変数を用意しています。8~15行目までは引数となる変数msgを編集しています。それをホストと接続するコマンドのconnectの引数として渡しているだけです。秘密鍵ならpublickeyを、パスワードならpasswdを入力して使って下さい。

このショートカットをデスクトップに置いておけばクリックするだけで外部サーバーに接続して作業を行うことが出来ます。

もしかするとTeraTermが.ttlファイルを認識出来るようにしておく設定もする必要があるかと思います。自分はインストールの際に選んでいました。

ログイン後にディレクトリを移動する

上記のTeraTermマクロを実行するとログインユーザのホームディレクトリに入ります。これだと不便なのでログインと同時にcdで入りたいディレクトリに移動したいと思います。マクロからコマンドを送信したい場合はsendlnを使います。

先程作成したファイルに下記を追記して下さい。

wait '$'
sendln 'cd [移動したいディレクトリパス]'

ログイン結果を待たずにsendlnでコマンドを送信しないように、waitでプロンプトが返るのを待たせています。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA