у меня есть rsync
сценарий, который запускается на одном сервере Linux для синхронизации файлов с другим сервером Linux. Есть ли способ запустить сценарий на одной из машин Linux, не открывая интерактивный ssh
сеанс к серверу?
Вы должны сделать это с помощью команды SSH. Вам просто нужно настроить plink.exe . Вы можете скачать его здесь:
http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
Затем из пакетного файла, подобного этому, выполните его:
@ECHO off
:: run remote command
plink.exe username@myserver /cygwin/C/Users/username/do-backup.sh
ECHO Remote command finished...
PAUSE>nul
Я понимаю, что у вас есть заранее написанный сценарий, но, возможно, вы сможете получить все, что вам нужно, с помощью одного из многих "rsync for cygwin repackages", например cwrsync и настройку задания по расписанию Windows с помощью cwrsync.
Если вы хотите автоматизировать задачу, вы можете подумать о plink. Фактически он использует ssh (или telnet, или raw) для подключения к другому компьютеру. Но вы можете использовать его для подключения и запуска команды в одной строке. См. Дополнительную информацию в документации по шпатлевке:
Если у вас есть сценарий оболочки, рассмотрите Cywgin. Установка занимает некоторое время, но вы получаете полный набор стандартных инструментов Linux, работающих в Windows, поэтому вам вообще не придется менять свой сценарий.