TeraTermマクロでリスト化をして接続先(ホスト名)を選択させるようにして接続をさせたいです。(Linux系サーバなど)そこで、下記URLを参考コピーして試しにやってみましたが、
http://www.j-oosk.com/teraterm/macro-command/706/

実行すると、下記エラーが出てしまい、うまく接続マクロが動いてくれません。
MACRO:Error
Variable not initialized.
<<<if>>> result &gt;= 0 then
<<<else>>>

ただし、このマクロ記述は、パスワードファイルを指定してパスワードを探してくる?
感じかと思いますが、実際には共通のID/パスワードでもOKです。(パターン1)
もしくは、この通りに、ホスト先によってID/パスワードを変更させれると
助かります(推奨:パターン2)

初心者ですが、だれかご教授頂ければ・・・と思います。
よろしくお願いいたします。


⇒同等にマネをして下記ttlマクロを作っています。
;============================================
;; [[初期値設定]]
;; ユーザ名/パスワードファイル設定
USERNAME = 'ユーザ名'
;; パスワードファイル指定
PASSFILE = 'C:\password.dat'
;; 配列設定(接続先IPアドレスを代入)
strdim HOSTNM 3
HOSTNM[0] = 'TEST-HOST1'
HOSTNM[1] = 'TEST-HOST2'
HOSTNM[2] = 'TEST-HOST3'
strdim HOSTIP 3
HOSTIP[0] = '192.168.0.1'
HOSTIP[1] = '192.168.0.2'
HOSTIP[2] = '192.168.0.3'
;============================================
;; 接続先ホスト選択
listbox '接続するホストを選択して下さい' '接続ホスト選択' HOSTNM
if result &gt;= 0 then
HOSTADDR = HOSTIP[result]
else
end
endif

;; パスワード取得(初回は入力要)
getpassword PASSFILE USERNAME PASSWORD

;; 接続用コマンド組立て
COMMAND = HOSTADDR
strconcat COMMAND ':22 /ssh /2 /auth=password /user='
strconcat COMMAND USERNAME
strconcat COMMAND ' /passwd='
strconcat COMMAND PASSWORD

;; 接続コマンド実行
connect COMMAND

;; マクロ終了
end

質問者からの補足コメント

  • >htmlの関係で&gt;と書いているだけなのか、
    マクロ中でも&gt;と書いているのか、どっちです?
    ⇒そのまま&gt;と記述コピーをしているだけです。htmlとは一切関係ないです。

    No.1の回答に寄せられた補足コメントです。 補足日時:2016/02/08 00:00

このQ&Aに関連する最新のQ&A

A 回答 (3件)

コピペして使うときでも、何をやっているかくらいは自分で判断するのがいいですよ。


元のが間違っていて(あるいは故意で)ハードディスクがフォーマットされる、なんてことが無いとも言えないので。

そして、うまく動かないときは、自分で作ったプログラムのつもりで、自分でデバッグしましょう。


こんなところに &gt; とあるのは明らかに間違いです。

おそらく、 > をHTML内に記述するために &gt; としたものがそのまま表示されているのだと思われます。
    • good
    • 0

>⇒そのまま&gt;と記述コピーをしているだけです。



なら、>=と記述して試してみましたか?
    • good
    • 0

><<<if>>> result &gt;= 0 then


><<<else>>>

htmlの関係で&gt;と書いているだけなのか、
マクロ中でも&gt;と書いているのか、どっちです?
マクロはhtml(やxml)ではないのでhtmlエスケープする必要はありませんが。
この回答への補足あり
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q.htaccessのRewriteCondで、?page=2 の時だけ / へアクセスさせたい

.htaccessのRewriteCondで、?page=2 の時だけ / へアクセスさせるにはどうすれば良いでしょうか?

?page=22の時は、そのまま で、
?page=2 の時だけリライト動作させるには?

・下記では何がダメでしょうか?
RewriteEngine On
RewriteCond %{QUERY_STRING} page=2
RewriteRule ^(.*)$ /$1? [R=301,L]

Aベストアンサー

>>ちなみに、「RewriteRule ^/?$ /? [L,R=301]」の「^/?$ /?」はどういう意味でしょうか?

結構面倒で厄介ですが、RewriteRuleの引数を簡単に。
面倒なので、そう真似れば良いと思います。

それでも色々な局面に出会ったら、googleヘルプフォーラムで質問すれば一発で正解回答の出会います。


RewriteRule の第1引数は正規表現です。
^は行頭、$は行末、/? は / 1文字もしくは0文字を意味します。
つまりパス部分が / のみという意味です。
? を書いて / がゼロ文字の時も許容しているのは
httpd.conf の時は / から始まりますが、.htaccess の場合は行頭の / が無いのでそれに対応するために ? をつけています。

RewriteRule の第2引数は書き換え先のパスです。
最後に ? をつけているのはクエリ文字列を空で上書きするためです。
この?を付けないと /l?page=2 にリダイレクトされてしまいます。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング

おすすめ情報