#bash #putty #plink
#bash #замазка #plink
Вопрос:
Я использую plink.exe в WinXP для запуска некоторых команд в Z / OS BASH. Мои команды перемежаются с командами echo, чтобы я мог анализировать выходные данные и определять, что где находится. Первые дюжина или около того команд выполняются нормально, но затем одна из них усекается. Например:
echo :end_logdetail:
echo Job Name : TfmMigration
echo :jobinfo:
Что происходит:
user@host:/dev> echo :end_logdetail:
:end_logdetail:
user@host:/dev> echo Job Name : Tf
Job Name : Tf
user@host:/dev> echo :jobinfo:
:jobinfo:
Я только что проверил, где во входном файле возникает ошибка, и это ровно 4444 байта в строке 116 (так что было выполнено 115 успешных команд, прежде чем что-то пошло не так). Команда, которую я использую, это:
Код:
plink -batch -pw xxxx user@host < «c:devtelnetcmd.txt » > «c:devtelnetout.txt »
The telnetcmd.txt это просто текстовый файл DOS с командой «exit» в конце.
Есть идеи, почему одна из моих команд усекается таким образом?
Обновление: у меня не возникает проблемы, если я передаю командный файл в plink с помощью -m, только когда я передаю его с помощью оператора < .
Комментарии:
1. что, если переместить команду, которая находится в строке 166, в более раннюю часть файла. Он все еще взрывается (указывает на плохой формат команды). Если нет, новая команда в строке ~ 116 взорвется. Я помню в прошлом, что DOS-каналы и перенаправление были не очень надежными, взрываясь при небольших размерах. Трудно поверить, что это проблема, но, возможно, вы можете опровергнуть это, прежде чем рассматривать другие проблемы. Удачи.
2. Если я изменю скрипт, он будет усекаться в разных местах (у меня больше нет скрипта в том виде, в каком он был, поскольку он генерируется на лету, я попытаюсь сохранить его и провести некоторые эксперименты). Несколько команд усекаются, в какой-то момент echo просто усекается до «ec», это может быть опасно, если «rm * .bak» были усечены до «rm *»! И то, что сценарий сгенерирован, подразумевает, что это не ошибка формата. Я посмотрел в шестнадцатеричном редакторе, и в командах нет ничего странного.
3. создайте тестовый скрипт, который будет только «echo 1; echo 2; echo ….n», посмотрите, выполняется ли усечение в одном и том же месте в нескольких тестах? Можете ли вы сделать так, чтобы файл большего размера не увеличивался, когда вы убираете plink из изображения? Существуют ли параметры plink, которые управляют размером команд, которые он может обрабатывать? Вероятно, все, о чем вы подумали. Или найдите здесь методы, которые можно использовать
ssh
для удаленного вызова команд. Я все еще думаю, что DOS, как канал, и перенаправление недостаточно надежны. Есть люди из XP, которые могут объяснить это как проблему? Попробуйте обратиться в группу поддержки putty по адресу putty.com (или что-то еще)? Удачи.4. Если я скопирую скрипт в окно Z / OS, он не усекает никаких команд, и plink — это единственный механизм, с помощью которого я должен запускать команды таким образом из файла на компьютере с Windows. putty.com это компания, которая продает putty, а у разработчиков PuTTY нет форумов, кроме как для разработчиков, а не для конечных пользователей. Я опубликовал здесь, на unix.com , и на комп.терминалах.
5. как насчет (из справочной страницы plink)
.... -m file #read remote command(s) from file
Ответ №1:
Как указывает шеллтер, я должен был использовать опцию -m. Это означает, что (в отличие от решения telnet, которое я использовал) мои команды не отображаются в выходных данных, как и подсказки командной строки, но я могу обойтись без них.