2013-07-21 3 views
2
내가 문자열에서 Ctrl 키-Z 명령을 보내려고

을에서 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"trough라는 SMS를 보내는 것입니다. 이 텍스트가 텍스트의 끝으로 해석되기 때문에이 Ctrl-Z를 보내야합니다.

답변

3

\nnn 표기는 8 진수로 숫자 인수를 취급, ​​그래서 당신은 정말 chr(22) 보내는합니다 (Ctrl + V를?)

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

문자 (26)는 다음과 같은 방법으로 (그리고 아마도 몇 가지 다른 모든 표현 될 수있다)

chr(26) 
"\032" 
"\x1a" 
"\cZ"