Я использую следующее для автоматического входа на удаленный сервер и затем запускаю команды, перечисленные в commands.txt
:
C:\path\to\putty.exe -load "[Sessionname]" -l [user] -pw [password] -m C:\path\to\commands.txt
commands.txt
содержит следующее:
ps -elf|grep 'sometext'
Однако, когда я пытаюсь это сделать, появляется новое окно для PuTTY, но оно закрывается и закрывается сразу после входа в систему. В результате я не вижу вывод команды (й).
Я не понимаю, что здесь происходит. Я ошибаюсь в своем подходе или мне нужно предпринять дополнительные шаги, чтобы заставить окно PuTTY на некоторое время остановиться перед выходом?
command-line
ssh
unix
putty
Питер Мортенсен
источник
источник
Ответы:
Вы должны использовать
plink.exe
(интерфейс командной строки для сервера PuTTY), а неputty.exe
Вы получаете это со страницы загрузки PuTTY
Без плинк:
Кажется, единственный способ - использовать
-log <logfile>
параметры, а затем распечатать их содержимое и удалить его.источник
-log
Сначала вам нужно создать отдельный файл, содержащий все команды, которые вы хотели бы выполнить.
Пример: я хотел бы загрузить и установить Drupal на своем домене, используя PuTTY. Для этого вы должны:
Сначала создайте файл .txt. В этом файле находятся команды. Мои следующие: " drush dl drupal " следующая строка, " drush si --account-name = [имя учетной записи] --account-pass = [account pass] --db-url = mysql: // [user]: [pass ] @ localhost / [имя базы данных] --y "
После сохранения этого файла вы собираетесь создать BAT- файл или ввести его в командной строке CMD:
putty.exe -ssh [domain name] -l [username] -pw [password] -m [the directory of the .txt file you created which contains the codes you want to be executed]
источник
Ваш подход кажется хорошим, однако в поведении есть одна настройка по умолчанию, которая вызывает у вас проблемы и, вероятно, заставляет вас верить, что ничего не происходит.
Ваш сеанс заканчивается сразу после выполнения команды, и PuTTY по умолчанию закрывает окно. Смотрите документацию PuTTY о том, как изменить это поведение для вашего сеанса.
источник
session-noclose
и используйте ее в сценариях.Не будет проблем, если вы просто захотите создать командный файл, чтобы открыть машину Unix. Ниже приведен пример:
Путь PuTTY должен быть в двойных кавычках, например "C: \ Program Files \ putty \ putty.ext"
имя машины = имя машины без двойных кавычек
пароль = с кавычками
источник
В дополнение к ответу Авирама:
Ниже приведен пример того, как вы будете запускать команды PuTTY из командной строки:
Сначала перейдите, например
C:\Program Files\PuTTY
, в каталог установки PuTTY , а затем выполните следующую команду:источник