У меня есть приложение, в котором есть компоненты для Windows и Unix. Мне нужно запускать ночные задания, которые запускают задачи / задания в обеих средах.
Их нужно упорядочить, поэтому я не могу просто использовать Cron / Task Scheduler.
Для каждого задания будет управляющий сценарий либо в Windows, либо в Unix, но этот сценарий должен будет инициировать задания в другой среде и определять, когда они завершены, и код успеха / отказа.
Раньше я добивался этого, используя «файлы флагов» на общей папке samba. Это сработало, но потребовало «опросного» поведения на принимающей стороне, которое я не считаю оптимальным.
Я бы предпочел не встраивать учетные данные пользователя в скрипт, если это возможно.
Если вы можете обойтись без использования SSH, я бы посоветовал установить FreeSSHD на машине Windows и выполнять процессы таким образом. FreeSSHD не копирует оболочку BASH, но предоставляет оболочку Windows.
В конце концов, я запустил процесс управления в Windows и использовал PLINK для выполнения команд в Unix. Используя PLINK, я смог захватить вывод консоли и коды выхода, сгенерированные процессом Unix, и обработать их в Windows.
Я установил аутентификацию на основе открытого ключа без пароля. Руководство по настройке находится в документации PLINK.