2

Ctrl-Z コマンドを文字列で送信しようとしています。これが私がやっていることです:

$command = "Prueba de código\26";
$port->write($command);
my $answer = $port->read(255);

ここで、「コマンド」は「ポート」(Device::SerialPort) 経由で送信したい文字列であり、「回答」で応答を取得しようとしていますが、問題は \26 ( Ctrl-Z) が機能しません。ポートは接続された携帯電話であり、目的は、この電話を介して「Prueba de código」と言う SMS を送信することです。これはテキストの終わりとして解釈されるため、この Ctrl-Z を送信する必要があります。

4

1 に答える 1

3

\nnn表記は数値引数を 8 進数として扱うため、実際に送信しています( chr(22)Ctrl+V?)

$ perl -e 'print ord("\26")'
22

文字 26 は、これらすべての方法 (およびおそらく他のいくつかの方法) で表現できます。

chr(26)
"\032"
"\x1a"
"\cZ"
于 2013-07-21T20:58:57.050 に答える