2016-10-07 3 views
0

У меня есть следующая проблема. Я не могу получить следующий код для работы автоматического корыта файла .BAT или с помощью сценария:
Команды CMD работают в promt, но не в .bat/.cmd файле

"C:\Program Files\WinSCP\WinSCP.com" 
/log="C:\Users\PC0102\Desktop\cz2\WinSCP.log" /ini=nul /loglevel=2*^
/command^
option batch continue 
option confirm on 
open ftps://PRC:*@datatransfer.cz.nl  
CD Incassopartner2CZ 
CD Input 
put C:\Users\PC0102\Desktop\cz2\Bestanden\ /prc/Incassopartner2CZ/Input 
exit 

Когда я ставлю этот код в моем ЦМДЕ он работает идеально. Но в тот момент, когда я пытаюсь сделать из него файл .bat, он запускает только winscp и ничего не делает. Что я здесь делаю неправильно?

+0

Пожалуйста узнать, как [формат кода] (HTTP : //stackoverflow.com/help/formatting) правильно ... – aschipfl

+0

Не беспокойтесь, добро пожаловать в Stackoverflow. Вы можете что-то повторить после запуска winscp.com? Работает ли скрипт без первой строки? –

+0

Когда я копирую свой код в cmd, он отлично работает. Но когда я помещаю его в .bat-файл, результатом является то, что код останавливается по какой-то причине после запуска winscp – cwaldschmit

ответ

1

Попробуйте это:

start "C:\Program Files\WinSCP\WinSCP.com" 
/log="C:\Users\PC0102\Desktop\cz2\WinSCP.log" /ini=nul /loglevel=2*^
/command^
option batch continue 
option confirm on 
open ftps://PRC:*@datatransfer.cz.nl  
CD Incassopartner2CZ 
CD Input 
put C:\Users\PC0102\Desktop\cz2\Bestanden\ /prc/Incassopartner2CZ/Input 
exit 

Я считаю, что проблема заключается в том, что сценарий ждет для WinSCP, чтобы выйти перед запуском что-нибудь еще. Добавление команды start будет выполнять следующие строки, как только начнется winscp, что может быть тем, что вы хотите.

Возможно, вы используете его неправильно. В WinSCP есть сценарий, который вы, вероятно, захотите использовать. Проверьте это здесь: https://winscp.net/eng/docs/scripting. Таким образом, вы можете поместить это в отдельный файл, скажем upload.txt

/log="C:\Users\PC0102\Desktop\cz2\WinSCP.log" /ini=nul /loglevel=2*^
/command^
option batch continue 
option confirm on 
open ftps://PRC:*@datatransfer.cz.nl  
CD Incassopartner2CZ 
CD Input 
put C:\Users\PC0102\Desktop\cz2\Bestanden\ /prc/Incassopartner2CZ/Input 
exit 

, а затем запустить его:

winscp.com /script="upload.txt" 
+0

Это результат вашего кода http://i64.tinypic.com/121wh2u.png – cwaldschmit

+0

Что бы вы сделали как команда put? –

+0

Я хочу подключить sftp-сервер и отправить файлы с моего локального компьютера на сервер. Это оно. – cwaldschmit

Смежные вопросы