TeraTermでttlファイルからマクロ処理を実行した際に
「無効なホスト」
というエラーメッセージが出てしまう。
ttlファイルの記述は間違っていないはずなのに何が原因でエラーになっているのか。
今回はこのTeraTermでマクロ実行時に「無効なホスト」エラーになる件について、エラーの原因と解決方法について紹介する。
この記事を書いている人
記事を読むメリット
「無効なホスト」エラーの原因
「無効なホスト」エラーの原因は何なのか。
メッセージだけ見ればホスト、接続先の情報が間違っているように見える。
では何が「無効なホスト」のエラー原因になっているかというと引数である。
テラタームコマンド TTERMPRO
の第一引数はホスト(IPやドメイン)だが、そこにマクロのttlファイル名を指定してしまっているのでファイル名をホストとして解釈できず「無効なホスト」になってしまっている。
TTERMPRO [ <host>[[:]<TCP port#>]・・・
参考:Tera Term Pro コマンドライン
エラーが起こる流れはこのようなイメージだ。
「無効なホスト」エラーの流れ
ではマクロファイルを実行できない原因は何なのか。
どのようにマクロファイルを実行すればよいのか。
真の原因はプログラムの関連付け
真の原因はホストではなくプログラムの関連付けにある。
「無効なホスト」エラーが出る場合の多くは、ttlファイルを読み込ませるプログラムが間違っている。
例えるならWordファイルをExcelで開こうとしている状態だ。
これでは正しく実行できるわけがない。
エラーになっている場合は、ttlファイルを ttermpro.exe
(テラタームプロ)に関連付けているはずだ。
ttermpro.exe
にはマクロファイルではなくホストや実行したい設定を直に引数に設定しなければならないので、ttlファイルの内容が正しくても引数の設定の仕方が違って「無効なホスト」エラーになってしまう。
マクロファイルを実行するには ttpmacro.exe
(テラタームプロマクロ)の引数にマクロファイルを指定する必要がある。
解決方法
原因がプログラムの関連付けが間違っていることなので、関連付けを正しいものに変更すれば良い。
ttlファイルを右クリック ↓ プログラムから開く ↓ 別のプログラムを選択 ↓ その他のアプリ
ttpmacro.exe
(テラタームプロマクロ)というマクロ実行用のプログラムを選ぶ。
間違いの ttermpro.exe
(テラタームプロ)の方はファイル名が似ているが、マクロ用ではなくテラターム本体なので間違えないように注意が必要だ。
ttpmacro.exe |
---|
プログラムの関連付けが正しく変更できたら、ttlファイルをホストとしてではなくマクロファイルとして実行するので、エラーなく実行できるようになったはずだ。
ttlマクロの実行
TeraTermの「無効なホスト」エラーについてまとめ
TeraTermでttlファイルからマクロ処理を実行した際に
「無効なホスト」
というエラーメッセージが出てしまう原因は
ttlファイルが ttermpro.exe
と関連付けされているから。
関連付けを ttpmacro.exe
に変更するとエラー無くマクロを実行できる。
プログラムの関連付けではなく、SSH接続そのものが失敗する場合は以下の記事も参考にしてほしい。
あわせて読みたい