TeraTermMacro

Posted by muchag | Tool |
初回投稿:2011-12-10 (土) 15:05:04 | 最終更新:2011-12-10 (土) 15:10:06

鯖の再起動など、何度も同じ作業をするようなものは
TeraTerm の Macro 機能を利用すると便利♪

リファレンス:TTL コマンドリファレンス

作成

TeraTerm の Macro 機能を利用するためには
TTL ファイルを作成する必要がある。
 

エディタ

それには TeraTerm 付属の TTLEditor を利用する。
 

文法

Tera Termマクロ:マクロの文法
こちらで一覧表を見つけた。

後、実際に作業してみて必要と思われたメモ。

  • 数値と文字列の型変換
    • 数値と文字列はちゃんと型区別がある
    • 数値 → 文字列 int2str コマンドを利用
    • 文字列 → 数値 str2int コマンドを利用

 

接続

鯖との接続には connect コマンドを利用する。
TTL コマンドリファレンス:connect

リファレンスを見ると具体的な記述法が数多く載っている。

が、繰り返し利用するものは変数に格納したいので
SOURCEFORGE.JP Magazine:Tera Termマクロ活用入門(2):リモートマシンを自在に操作する
を参考にして、プレインテキストを利用するバージョン。

  1. hostname = ***.***.***.***  ; IPアドレス(DNSでもOK?)
  2. username = 'hoge'
  3. password = 'password'
  4. ;keyfile = 'path'
  5.  
  6. msg = hostname
  7. strconcat msg ':22 /ssh /2 /auth='
  8. strconcat msg password
  9. strconcat msg ' /user='
  10. strconcat msg username
  11. strconcat msg ' /passwd="'
  12. strconcat msg password
  13. strconcat msg '"'
  14. connect msg

 
これで接続に成功。
 

shell コマンドの実行

sendln(SENDLN) コマンドを利用。

shell コマンドだけでなく、パスワードなどの入力値にも対応。

つまり、コンソール画面で自分が打ち込む文言を sendln で対応。
 

文字列の結合

strconcat コマンドを利用。

利用法は前述「接続」の例を参照。
 

構文
if

VB とほぼ同じ。
elseif, endif スペースなし。
= は1つ。

  1. if index = 1 then
  2.     sendln 'ls'
  3. elseif index > 2 then
  4.     sendln 'pwd'
  5. else
  6.     sendln 'cd /home'
  7. endif

 

for

趙簡略化。

  1. for index 1 5
  2.     sendln 'ls'
  3. next

 
まぁ ひとまずはこんな感じ。
 

実行

TTLEditor にて作成した TTL ファイルをダブルクリックするだけ。
 

関連付け

初回は TTL ファイルと TeraTerm の関連付けが行われていない場合がある。
(インストール時に関連付けしているか否かで決まるようだ)

その場合は、ダブルクリック後に
TeraTerm のインストールディレクトリにある
ttpmacro.exe に関連付ける。
参考元サイト:SOURCEFORGE.JP Magazine Tera Termマクロ活用入門(1):各種ログインを自動化する
 

参考元サイト

SOURCEFORGE.JP Magazine:Tera Termマクロ活用入門(1):各種ログインを自動化する

Posted by muchag | Tool |
初回投稿:2011-12-10 (土) 15:05:04 | 最終更新:2011-12-10 (土) 15:10:06

コメントはまだありません »

No comments yet.

RSS feed for comments on this post. TrackBack URI

Leave a comment