0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Teratermマクロで、waitがうまく機能しないと思ったら

Posted at

忙しい人向けに

Teratermマクロにおけるwaitコマンドは、最後に設定したシステム変数 timeoutがそのまま適用されます。
筆者が、マクロの前の方でtimeoutが設定されていることに気づかず、テンパっていたというお話です。

詳細

複数のUbuntu PCに対してSSH接続を行い、各種確認コマンドを実行するTeratermマクロを作成する機会がありました。
while文中、connectコマンド で接続を試みる際に、プロンプトが返ってきてからコマンドを順に打ってほしいので、

test.ttl
wait '$' 

を記載しました。しかし、プロンプトが返ってくる前にコマンドが打たれてしまいます。

そこで、Teratermの公式リファレンスを確認したところ、wait を使用する際に timeout を設定しない場合、タイムアウトは発生しないことがわかりました。
そのため、どこかでtimeoutが設定されていると推測。やはり、while文の前で timeout = 1 と設定されている箇所がありました。。。

対策として、wait コマンドの直前で timeout = 30 と再設定することで、期待通りに動作することを確認できました。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?