マニュアルの記載
teratermマクロでログインするには、以下のような記載がマニュアルから見つけられる。
https://ttssh2.osdn.jp/manual/ja/macro/command/connect.html
connect '192.168.0.1:22 /ssh /auth=password /user=user /passwd=password'
この方法だとパスワードに「;」、「'」が含まれているケースに対応できない。
「;」の解決策
パスワード部分を「"pass;word"」のようにダブルクォートで括ってやればよい。
今度は「"」がパスワードに含まれているケースに対応できない。
「"」の解決策
「"」は「""」に置き換えてやればよい。
これらのエスケープを行ってもパスワードに「'」が含まれる場合は構文エラーに陥る
「'」の解決策
「'」をASCIIコード指定に置き換えてしまえば構文エラーは発生しない。
まとめ
以上を適用すれば、パスワードを意地悪な「"';pass」とした場合でも以下のようにすれば問題なく入力できる。
connect '192.168.0.1:22 /ssh /auth=password /user=user /passwd="'#34#34#39#59#112#97#115#115'"'