Автоматический ввод текста в telnet с Mac - PullRequest
0 голосов
/ 15 сентября 2018

Я пытаюсь написать скрипт для отправки простой текстовой строки (rprst 2 $ 0D) через telnet с компьютера Mac с ОС 10.11 на устаревшее встроенное устройство. SSH не вариант. Нет пароля для входа на устройство.

#!/usr/bin/expect -f
telnet 172.16.1.10
sleep 1
expect "'^]'"
sleep 1
echo RPRST 2 $0D

Когда я запускаю это, система входит в сеанс telnet, а затем останавливается. Я могу ввести [CTRL] +], затем выйти, после чего я получаю паузу в 1 секунду, затем следующее:

Connection closed.
couldn't read file ""'^]'"": no such file or directory

"rprst 2 /Users/$USR/Desktop/my_script.shD"

Я также пробовал заголовок #! / Bin / Баш и попробовал систему вместо ожидаемого. Я также попытался удалить или изменить время сна, удалив двойные кавычки из строки Expect. Я пытался использовать "spawn telnet", но Mac говорит мне, что spawn не является действительной командой. У кого-нибудь есть идеи?

РЕДАКТИРОВАТЬ: Я продолжал пытаться, но безуспешно. Моя последняя попытка:

#!/bin/sh
{ echo "rprst 2 $0D"; sleep 1; echo "rprst 2 $0D"; sleep 1; } | telnet 172.16.1.10 23

Терминал дает мне ответ:

Trying 172.16.1.10...
Connected to 172.16.1.10.
Escape character is '^]'.

telnet> ?Invalid command
telnet> Connection closed.
...