У меня возникли проблемы с получением ответа на мой вопрос, с точки зрения непрофессионалов. Это, вероятно, мой недостаток знаний по этому вопросу, поэтому я тупой вопрос. У меня есть машина с Windows, с которой я запускаю инструмент шпатлевки и подключаюсь к Linux. Я запускаю « killall /bob/bin/myfile.out », затем закрываю шпатлевку, затем ввожу командную строку pscp.exe myfilet.out.2.3.4 [email protected]:/bob/bin/myfile.out . Может ли кто-нибудь показать мне, как объединить их в один пакетный файл Windows? благодарю вас
окна, шпатлевка, pscp объединены в один пакетный файл, возможно ли это?
Ответы (2)
Вы можете использовать бесплатный инструмент командной строки Plink для запуска команд. на внешних серверах по SSH.
@echo off
Plink [email protected] "killall /bob/bin/myfile.out"
pscp.exe myfilet.out.2.3.4 [email protected]:/bob/bin/myfile.out || echo an error occurred when copying the file.
команда после ||
во второй строке будет выполняться только в том случае, если предыдущей командой был установлен уровень ошибки.
Я пока не могу добавлять комментарии, но не могли бы вы рассказать, как вы входите в систему с помощью шпатлевки, но не делаете то же самое с plink? Plink не только принимает все те же параметры, что и шпатлевка, но если у вас есть сохраненная сессия в шпаклевке, вы можете получить к ней доступ из plink. Без каких-либо подкоманд plink должен по существу сделать вашу оболочку CMD похожей на грубое окно шпаклевки, с подкомандами он выполнит их и вернет:
C:\Users\riglerjo>plink savedputtysession
Using username "rigler".
# hostname
s9-chicago.accountservergroup.com
-bash-3.2$ exit
logout
Запустите удаленную команду в качестве опции на plink:
C:\Users\riglerjo>plink savedputtysession hostname
s9-chicago.accountservergroup.com