WinSCP: SFTP-скрипт для переноса и перемещения локальных файлов в другую папку - PullRequest
1 голос
/ 09 июля 2019

Я получил мой SFTP-скрипт с WinSCP для работы, но последняя часть, которая перемещает файлы из папки ready в папку sent, не будет работать.

move "C:\SFTP stuff\ready\*.*" "C:\SFTP stuff\sent"

Deploy.txt (имя файла):

CD "C:\Program Files (x86)\WinSCP" 
Winscp.com /script="C:\SFTP stuff\FTPwinscp.txt"

FTPwinscp.txt:

open sftp://FTP ADDRESS:8022/ -hostkey="ssh-rsa REALLY LONG KEY="
put "C:\SFTP stuff\ready\*.*" "/incoming/x12/"
cd "C:\SFTP stuff\"
move "C:\SFTP stuff\ready\*.*" "C:\SFTP stuff\sent"

После команды put я ожидал, что скрипт продолжит работу и перенесет файлы в другую папку. После запуска скрипта он только переносится. Я попытался сценарий move как его собственный текстовый файл, и он перемещает файлы, как ожидалось. Я неправильно это реализую? Первое время для решения этой проблемы.

1 Ответ

1 голос
/ 09 июля 2019

WinSCP не имеет команды move.WinSCP не имеет команды для перемещения локальных файлов в другую локальную папку.

Существует Windows move команда с используемым синтаксисом.Поэтому вам нужно переместить команду move из скрипта WinSCP в ваш пакетный файл.И вы должны вызывать move, только когда WinSCP преуспевает.

cd "C:\Program Files (x86)\WinSCP" 
winscp.com /script="C:\SFTP stuff\FTPwinscp.txt"

if %ERRORLEVEL% equ 0 (
    move "C:\SFTP stuff\ready\*.*" "C:\SFTP stuff\sent"
)

Все это описано в статье WinSCP Перемещение локальных файлов в другое место после успешной загрузки .
(Первый удар в Google по названию вашего вопроса)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...