Как насчет того, чтобы сделать ваш скрипт WinSCP проще в обслуживании?
Я полагаю, что все, что вам нужно, это поместить одну команду synchronize
каждого каталога в ваш скрипт. Это не кажется слишком сложным для поддержания.
Т.е. ваш скрипт (script.txt
) будет выглядеть так:
open sftp://user:password@example.com -hostkey="server_hostkey"
# one synchronize command per directory
synchronize remote C:\local_directory1 /home/user/remote_directory1
synchronize remote C:\local_directory2 /home/user/remote_directory2
...
synchronize remote C:\local_directoryN /home/user/remote_directoryN
exit
И вы добавляете задачу в планировщик Windows с помощью командной строки, например:
"C:\Program Files\WinSCP\WinSCP.exe" "/script=path_to_script\script.txt" "/log=path_to_script\script.log"
В идеале также добавьте /ini=nul
в командную строку, чтобы изолировать ваш скрипт от окружения.