xmodemrecv

【Tera Term マクロ言語】コマンドリファレンス

xmodemrecv 機能

[通信コマンド]

XMODEM プロトコルでファイルを受信します。

コマンドライン

xmodemrecv <file name> <binary flag> <option>

機能説明

<file name>
XMODEM プロトコルでファイル <file name> を受信します。
受信が終わるまで次のコマンドは実行されません。
<binary flag>
ファイルがバイナリファイルの場合は、<binary flag> は 0 以外でなければなりません。
テキストファイルの場合は、<binary flag> は 0 でなければなりません。
<binary flag>タイプ
0テキストファイル
1バイナリファイル
<option>
<option> によって、XMODEM のオプション(エラー検出の種類)を指定します。
パケットサイズ (1K) は送信側でのみ指定できます。(バージョン 4.90 以降)
<option>バージョン 4.89 以前バージョン 4.90 以降
1ChecksumChecksum
2CRCCRC
31KCRC
それ以外ChecksumChecksum

パラメータの説明

指定するパラメータは以下の通りです。
パラメータパラメータ説明
<file name>文字列受信するファイル名を指定します。
<binary flag>整数ファイルタイプ(バイナリかテキストか)を指定します。
<option>整数XMODEM のオプション(エラー検出の種類)を指定します。

続きを読む

waitregex

【Tera Term マクロ言語】コマンドリファレンス

waitregex 機能

[通信コマンド]

正規表現文字列を含む行を待ちます。

コマンドライン

waitregex <string1 with regular expression> [<string2 with regular expression> ...]

機能説明

Oniguruma の正規表現が使用できます。

正規表現文字列のうち 1 つ以上を含む行(最大 511 文字)をホストから受信するか、タイムアウトが発生するまでマクロを停止します。
正規表現文字列は最大 10 個まで指定できます。

システム変数 timeout か mtimeout が 0 より大きい場合、<timeout>.<mtimeout> 秒の時間がすぎるとタイムアウトが発生します。
タイムアウトの値が 0 以下の場合は、タイムアウトは発生しません。

これらのコマンドの実行結果はシステム変数 <result> , <inputstr>, <matchstr> に格納されます。
システム変数格納対象
result受信しなかった、もしくは受信した列の番号が格納されます。
inputstr受信した行が格納されます。
matchstr最初にマッチしたパターンが格納されます。
groupmatchstr1
groupmatchstr9
グループマッチしたパターンが格納されます。
日本語等のマルチバイト文字列を待つ場合、事前に regexoption で適切なエンコーディングを設定しておく必要があります。

なお、<mtimeout> の精度は 50 msec 程度です。

パラメータの説明

指定するパラメータは以下の通りです。
パラメータパラメータ説明
<string1 with regular expression>文字列省略不可。正規表現で待機したい文字列を指定します。
<string2 with regular expression>文字列省略可。正規表現で待機したい文字列を指定します。
<string3 with regular expression>文字列省略可。正規表現で待機したい文字列を指定します。
<string4 with regular expression>文字列省略可。正規表現で待機したい文字列を指定します。
<string5 with regular expression>文字列省略可。正規表現で待機したい文字列を指定します。
<string6 with regular expression>文字列省略可。正規表現で待機したい文字列を指定します。
<string7 with regular expression>文字列省略可。正規表現で待機したい文字列を指定します。
<string8 with regular expression>文字列省略可。正規表現で待機したい文字列を指定します。
<string9 with regular expression>文字列省略可。正規表現で待機したい文字列を指定します。
<string10 with regular expression>文字列省略可。正規表現で待機したい文字列を指定します。

続きを読む

waitrecv

【Tera Term マクロ言語】コマンドリファレンス

waitrecv 機能

[通信コマンド]

文字列を待ちます。

コマンドライン

waitrecv <sub-string> <len> <pos>

機能説明

マクロの実行を一時停止させて、文字列が届くのを待ちます。

次の条件を満たすと、waitrecv の判断処理を行います。

・文字列の長さが <len> 文字
・文字列がその <pos> 文字目(1オリジン)から始まる副文字列 <sub-string> を含んでいる

コマンドは <len> バイトの文字列を受信するたびに、条件を満たすかどうかを確認します。
例えば、<sub-string> が "def"、<len> が 9 、<pos> が 4 のとき、文字列 "abcdefghi" は条件を満たします。

もし条件を満たす文字列が送られてきたら、システム変数 <inputstr> に保存されます。

システム変数 <timeout><mtimeout> が 0 より大きい場合、<timeout>.<mtimeout> 秒の時間がすぎるとタイムアウトが発生します。
タイムアウトの値が 0 以下の場合は、タイムアウトは発生しません。

これらのコマンドの実行結果はシステム変数 <result> に格納されます。

その後、マクロの次の行へ処理を進めます。

なお、<mtimeout> の精度は 50 msec 程度です。
<sub-string>
待機したい受信文字列に含まれる副文字列を指定します。
<len>
対象とする、受信文字列の長さを指定します。

9 であれば 9 文字受信した時点で条件を満たします。
<pos>
受信文字列内で <sub-string> を期待する文字数目を指定します

3 であれば、受信した文字の中で 3 文字目から <sub-string> が含まれることを示します。
受信文字列より大きな数値*1は指定できません。

また、同じ理由で 5 文字中の 4 文字目から xxx という3文字を含む文字列という指定もできません。

パラメータの説明

指定するパラメータは以下の通りです。
パラメータパラメータ説明
<sub-string>文字列待機したい受信文字列に含まれる文字列を指定します。
<len>整数対象とする、受信文字列の長さを指定します。
<pos>整数受信文字列内で <sub-string> を期待する文字数目を指定します。

続きを読む

waitn

【Tera Term マクロ言語】コマンドリファレンス

waitn 機能

[通信コマンド]

指定されたバイト数の受信を待ちます。

コマンドライン

waitn <received byte count>

機能説明

マクロの実行を一時停止させて、<received byte count> に指定されたバイト数以上のデータが届くのを待ちます。

届いたデータは <inputstr> に保存されます。
もし届いたデータが 511 バイトを越える場合は、最初の 511 バイトのみが <inputstr> に保存されます。

システム変数 <timeout><mtimeout> が 0 より大きい場合、<timeout>.<mtimeout> 秒の時間がすぎるとタイムアウトが発生します。
タイムアウトの値が 0 以下の場合は、タイムアウトは発生しません。

これらのコマンドの実行結果はシステム変数 <result> に格納されます。

なお、<mtimeout> の精度は 50 msec 程度です。

パラメータの説明

指定するパラメータは以下の通りです。
パラメータパラメータ説明
<received byte count>文字列データ(バイト数)を指定します。

続きを読む

waitln

【Tera Term マクロ言語】コマンドリファレンス

waitln 機能

[通信コマンド]

文字列を含む行を待ちます。

コマンドライン

waitln <string1> [<string2> ...]

機能説明

文字列 <string1> [<string2> ...] のうち一つを含む行をホストから受信するか、タイムアウトが発生するまでマクロを停止します。
文字列は最大 10 個まで指定できます。

空文字列が指定された場合、任意の一文字(+改行)を受信するのを待ちます。

システム変数 timeout か mtimeout が 0 より大きい場合、<timeout>.<mtimeout> 秒の時間がすぎるとタイムアウトが発生します。
タイムアウトの値が 0 以下の場合は、タイムアウトは発生しません。

これらのコマンドは受信した行をシステム変数 inputstr に格納し、以下戻り値の値をシステム変数 result に格納します。

なお、<mtimeout> の精度は 50 msec 程度です。

パラメータの説明

指定するパラメータは以下の通りです。
パラメータパラメータ説明
<string1>文字列待機したい文字列(1つ目)を指定します。
<string2>文字列待機したい文字列(2つ目)を指定します。
<string3>文字列待機したい文字列(3つ目)を指定します。
<string4>文字列待機したい文字列(4つ目)を指定します。
<string5>文字列待機したい文字列(5つ目)を指定します。
<string6>文字列待機したい文字列(6つ目)を指定します。
<string7>文字列待機したい文字列(7つ目)を指定します。
<string8>文字列待機したい文字列(8つ目)を指定します。
<string9>文字列待機したい文字列(9つ目)を指定します。
<string10>文字列待機したい文字列(10個目)を指定します。

続きを読む