Проблема с запуском командного файла в winscp - PullRequest
0 голосов
/ 21 марта 2011

Я новичок в Winscp, и у меня возникла проблема с выполнением командного файла.

Сценарий примерно такой:

У меня есть пакетный файл A, две папки (вверх B и вниз C), некоторые текстовые файлы в папке D вверх, текстовый файл E (отличается от файлов в D) и ppk-файла F. Все эти вещи находятся только в одной папке.

Пакетный файл A имеет сценарий (сценарий показан ниже), который содержит текст.Если это текстовое содержимое имеет значение true (означает, что этот текст (текстовое содержимое относится к E, т. Е. Если текстовый файл E выполняется) выполняется), то только файлы в верхней папке B перемещаются в нижнюю папку C.

И сценарий в пакетном файле A:

C:\somefolder\WinSCP3.exe /console /script=E.txt /log=session.log
if errorlevel 1 goto error
xcopy C:\somefolder\up\*.*  C:\somefolder\down\  /y
del  C:\somefolder\up\*.*   /Q
:error
echo Upload failed, keeping local files

И содержимое в текстовом файле E:

option batch abort
option confirm off
open @test.com 
change remote directory
cd \somedirectory
option transfer binary
put C:\somefolder\up\*.*
close
exit

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

Пожалуйста, дайте мне знать, где именно проблема и как решить эту проблему ...

Ответы [ 2 ]

2 голосов
/ 22 марта 2011

Благодаря Андрею М. Его комментарии прояснили мое замешательство и дали правильный ответ.

Вот правильный синтаксис.

C:\somefolder\WinSCP3.exe /console /script=E.txt /log=session.log

xcopy C:\somefolder\up\*.*  C:\somefolder\down\  /y
del  C:\somefolder\up\*.*   /Q

if errorlevel 1 goto error

:error
echo Upload failed, keeping local files

Содержание в текстовом файле E.txt:

option batch abort
option confirm off
open @test.com 
change remote directory
cd \somedirectory
option transfer binary
put C:\somefolder\up\*.*
close
exit
0 голосов
/ 22 февраля 2013

Не знаю, кто-нибудь еще читал эту ветку или нет .. Но то, что я знаю, это «положить» команду загрузки файлов из локального каталога в удаленный каталог. TS хотел «загрузить файлы из удаленного каталога в локальный каталог», поэтому я думаю, что правильная команда «get».

Ура, Shen

...