4

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

option echo off
option batch on
option confirm off
open abcde:abcde@sftp.xxxyyyzzz.net

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:abcde@sftp.xxyyzz.net

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

2 ответа2

3

Вам необходимо сохранить ваш скрипт WinSCP в файл (например, script.txt).

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

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

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

0

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

echo off
WinScp /ini=nul /command "open ubuntu@52.52.52.242 - 
privatekey=D:\PostgresXL.ppk" "move_files_or_do_something" "exit"

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .