Я пытаюсь разработать программу командной строки на C ++ для Windows, которая использует putty для управления Raspberry Pi. Я использовал приложение Putty, и оно работает на 100% нормально. Однако я попытался использовать исполняемый файл plink, чтобы управлять программой с помощью моей программы на C ++, но при попытке подключиться к Pi я получаю случайную строку символов.
консольный вывод выглядит следующим образом
C:\Users\user>plink [email protected]
Using username "pi".
[email protected]'s password:
Linux raspberrypi 3.6.11+ #371 PREEMPT Thu Feb 7 16:31:35 GMT 2013 armv6l
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Tue May 21 15:59:02 2013 from xxx.xxx.xxx.xxx
←]0;pi@raspberrypi: ~←[01;32mpi@raspberrypi←[00m ←[01;34m~ $←[00m
←]0;pi@raspberrypi: ~←[01;32mpi@raspberrypi←[00m ←[01;34m~ $←[00m
←]0;pi@raspberrypi: ~←[01;32mpi@raspberrypi←[00m ←[01;34m~ $←[00m
(последняя строка появляется снова, когда я нажимаю ввод).
Любая помощь, пожалуйста?
Это ваша подсказка оболочки появляется. Странные символы — это управляющие символы, которые ваша оболочка использует для создания цветного терминала.
Plink
не соблюдает настройки терминала должным образом, иначе эти управляющие символы никогда не будут отправлены. Вы должны быть в состоянии сохранить сеанс замазки с типом терминала, установленным на «немой», и загрузить эти настройки с помощью plink
с использованием -load
вариант.
Других решений пока нет …