Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - echo с перенаправлением вывода через plink

Ответить
Настройки темы
CMD/BAT - echo с перенаправлением вывода через plink

Новый участник


Сообщения: 2
Благодарности: 0

Профиль | Отправить PM | Цитировать


Изменения
Автор: alxdon-rs
Дата: 09-02-2015
Задача: с машины, работающей под WindowsXP, требуется выполнить на Linux-хосте через telnet такую последовательность команд:
Код: Выделить весь код
echo -e "secret\nsecret" | passwd ; exit
Пытаюсь сделать через plink:
Код: Выделить весь код
plink.exe -telnet 192.168.1.1 "passwd; exit"
Проблема: команды не посылаются. Тогда пробую выполнить скрипт, размещеный на локальной машине:
Код: Выделить весь код
plink.exe -telnet 192.168.1.1 -m z.sh
Та же проблема: команды не посылаются. Тогда пробую через перенаправление стандартных потоков:
Код: Выделить весь код
echo "passwd; exit" | plink.exe -telnet 192.168.1.1
# "passwd; exit"
/bin/ash: passwd; exit: not found
Проблема: из-за кавычек удаленный хост выполняет строку как цельную команду. Без кавычек же работает:
Код: Выделить весь код
echo passwd; exit | plink.exe -telnet 192.168.1.1
Но проблема в том, что мне нужно выполнить цепочки команд:
Код: Выделить весь код
echo echo -e "secret\nsecret" | passwd ; exit | plink.exe -telnet 192.168.1.1
"passwd" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
Имеющиеся препятствия:
1) plink не передает команды на удаленный хост иначе как со стандартного ввода;
2) выполняющийся на локальной машине echo пытается перенаправить вывод в passwd, если не взять последовательность команд в кавычки;
3) кавычки же заставляют удаленный хост считать строку цельной командой;
4) ssh не включится до смены пароля, что, собственно и должен сделать мой скрипт;
5) ключи putty -telnet -m одновременно тоже не работают.

upd.:
Экранирование символа канала тоже не решило проблему:
Код: Выделить весь код
>echo echo -e "secret\nsecret" ^| passwd ; exit | plink.exe -telnet 192.168.1.1
"passwd" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.

Отправлено: 19:18, 09-02-2015

 

Аватара для cameron

Ветеран


Сообщения: 4677
Благодарности: 1092

Профиль | Отправить PM | Цитировать


Цитата alxdon-rs:
Задача: с машины, работающей под WindowsXP, требуется выполнить на Linux-хосте через telnet »
возьмите Telnet Script Executor

-------
в личке я не консультирую и не отвечаю на профессиональные вопросы. для этого есть форум.


Отправлено: 20:50, 09-02-2015 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 2
Благодарности: 0

Профиль | Отправить PM | Цитировать


А почему не работает такая конструкция:
Код: Выделить весь код
echo echo -e "secret\nsecret" ^| passwd ; exit | plink.exe -telnet 192.168.1.1
но работает такая:
Код: Выделить весь код
echo echo -e "secret\nsecret" ^| passwd ; exit >tmpfile
plink.exe -telnet 192.168.1.1 <tmpfile

Отправлено: 21:16, 09-02-2015 | #3



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - echo с перенаправлением вывода через plink

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - plink.exe проверка статуса oracle gg NovaC Скриптовые языки администрирования Windows 0 26-11-2014 10:03
D-Link - Проблемма с перенаправлением. Nemo-tec Сетевое оборудование 2 14-09-2011 17:28
Службы - Как задать ВЫСОКИЙ приоритет ввода/вывода(IoPriority) и PagePriority через реестр/cmd 19w85 Microsoft Windows 7 21 17-06-2011 15:48
FreeBSD - Трабл с перенаправлением портов Tosha_l Общий по FreeBSD 12 10-11-2009 09:04
[решено] сохранение вывода консольных команд в переменную не через файл andr_mozg AutoIt 2 03-08-2009 12:52




 
Переход