Проблема заключается в следующем: я хочу скопировать файлы с удаленного компьютера.
Я ищу способ написания сценария оболочки, который будет подключаться к удаленной машине, получать местоположение сохраненного файла, как только я получаю отключение местоположения от удаленного сервера и использовать scp изнутри локальной машины с полученным местоположением для скопируйте файл
В частности, я хочу знать, как из сценария я мог бы подключиться к удаленной машине, выполнять задачи на этой машине. Отключите и продолжите выполнение локально.
Вы можете написать скрипт в следующем формате:
Вам нужно настроить ключи SSH, чтобы они
command3
выполнялись без запроса пароля.источник
ssh user@remote command3
бежит,command4
не могу начатьssh user@machine command3 &
Я предполагаю, что у вас уже есть представление о том, как определить файл, который вы хотите скопировать, и что вы можете или уже написали сценарий или набор команд, которые будут выполняться на удаленном компьютере, который выполняет эту идентификацию. ,
Кроме того, я также предполагаю, что эти команды печатают на стандартном выводе полный путь к файлу или относительный путь к файлу относительно домашнего каталога пользователя SSH, используемого для копирования. В моем примере имя сценария «getfilepath.sh», хотя это не обязательно должен быть сценарий оболочки, это может быть какой-то другой исполняемый файл или даже серия команд.
В приведенном выше коде нотация «$ ()» представляет собой способ получения стандартного вывода команды в качестве переменной оболочки. Это довольно стандартно, но если вы используете оболочку, которая ее не понимает, вы можете вместо этого окружить команду «обратными галочками», которые являются знаками ударения слева от клавиши 1 на большинстве клавиатур США.
источник
возможно, возможно запустить запланированную задачу на удаленной машине, которая выполняет всю работу.
Это не позволит вам подключиться к удаленному компьютеру во время поиска местоположения файлов, которые вы хотите скопировать.
Я делаю это:
Командная строка запускает запланированную задачу, которая выполняет пакетный скрипт в моем случае.
С наилучшими пожеланиями
источник