実現したいこと
・指定したファイルの存在有無の確認により分岐するif文を作成したい
・リモートから受信したテキストによってif分岐を行いたい
前提
sendln "test -f /home/test/test.lock ; echo CC=$?"
上記のコマンドラインにより指定したファイルの存在有無を確認し、存在が確認できればCC=0、確認できなければCC=1とする。
その値によってif分岐を行いたいです。
・test -fコマンドによる値は正しく取れていることがプロンプトから確認できています。
発生している問題・エラーメッセージ
・if文の条件式にリモートから受信した「CC=0, CC=1」の値を埋め込むことができない。
・下記のソースコードを実行すると必ずCC=0の処理に入る
該当のソースコード
ttl
1;ファイルが存在する場合はCC=0, 存在しない場合はCC=1を返却 2sendln "test -f /home/test/test.lock ; echo CC=$?" 3wait "CC=0" "CC=1" 4recvln 5recvln 6recvline=inputstr 7 8;test.lockファイルを確認した場合、シェルを実行せずにマクロを終了 9if $recvline == "CC=0" then 10 endMsg = "test.lockファイルが存在しています。マクロを終了します。" 11 messagebox endMsg "Status" 12 end 13 14elseif $recvline == "CC=1" then 15;yesnoboxは「はい」でresult=1, 「いいえ」でresult=0が返却 16MSG = "「はい」→test.sh実行 「いいえ」→終了" 17yesnobox MSG "Status" 18if result = 0 then 19 end 20else 21 sendln "/home/test/test.sh" 22 end 23endif 24end
試したこと
・変数recvlineの前の「$」が必要ない?
結果:Type mismatchエラー
補足情報(FW/ツールのバージョンなど)
OS:Linux
TeraTermマクロのバージョン:4.97

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。