Получение сообщения «Хост «=" не существует» при попытке автоматизировать передачу файлов с помощью скрипта WinSCP

Получение сообщения «Хост «=" не существует» при попытке автоматизировать передачу файлов с помощью скрипта WinSCP

Я пытаюсь автоматизировать некоторые передачи файлов с помощью скриптов WinSCP. Вот что у меня есть.

option echo off
option batch on
option confirm off
open abcde:[email protected]

lcd "t:\"

put -nopermissions -nopreservetime "test.txt" test.txt

exit

Я могу на самом деле попасть в командную строку и выполнить команды open, lcd, и putбез каких-либо проблем. Когда я использую скрипт, я получаю эту ошибку:

Opening session using command-line parameter in scripting is deprecated. Use 'open' command instead.
Searching for host...
Host "=" does not exist.

Я преодолел препятствие с подключением, поместив команду подключения в пакетный файл, извлекающий скрипт.

Winscp.com abcde:[email protected]

Как вызвать скрипт для выполнения остальных задач?

решение1

Вам нужно сохранить свойСкрипт WinSCPв файл (например script.txt).

А затем заставьте WinSCP запустить скрипт, используя/script=переключатель командной строки, нравиться:

winscp.com /log=winscp.log /script=script.txt

Вам следует начать сруководство по автоматизации передачи файлов SFTP с помощью WinSCP.

решение2

Это сработало для меня. Я сохранил следующий текст как .bat-файл и запустил его.

echo off
WinScp /ini=nul /command "open [email protected] - 
privatekey=D:\PostgresXL.ppk" "move_files_or_do_something" "exit"

Связанный контент