TeraTermのマクロにおけるリンクと状態制御 その3(2021/02/03) [Windows]
なぜ制御が失敗してしまうかいくつか例を挙げてみたいと思います。
waitで待つ文字列の考慮不足1
waitで待つ文字列の考慮不足2
waitのタイムアウト
waitで待つ文字列の考慮不足1
sendln 'show running-config' wait 'Myhost2' ↓ Myhost2# show running-config .... ! hostname Myhost2 !このようにプロンプト以外でホスト名が出力され、マクロとしてはwaitが満たされたため勝手に先へ進んでしまいます。
waitで待つ文字列の考慮不足2
sendln 'show running-config' wait '#' ↓ Myhost2# show running-config .... interface GigabitEthernet0/3 description ### Server ### switchport access vlan 100CISCOの特権モードではプロンプトが#に変わるため、waitで期待する文字列に設定するケースも多いです。ですがこのように#はdescriptionに含めることができるため、マクロとしてはwaitが満たされ勝手に先へ進んでしまいます。
waitのタイムアウト
timeout=5 sendln 'show tech-support' wait '#' sendln 'show logging' wait '#'timeoutが5秒のため、waitは5秒後に指定文字列の受信がなかったと「タイムアウト」され強制的に先へ進んでしまいます。show techなどは出力完了に数分かかるケースもあります。
タグ:TeraTerm
コメント 0