2016-10-07 2 views
0

J'ai le problème suivant. Je ne peux pas obtenir le code ci-dessous pour travailler creux automatique d'un fichier .BAT ou avec un script:
Les commandes CMD fonctionnent dans promt mais pas dans le fichier .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 

Quand je mets ce code dans mon cmd il fonctionne parfaitement. Mais au moment où j'essaye d'en faire un fichier .bat, il ne démarre que winscp et ne fait rien d'autre. Qu'est-ce que je fais mal ici?

+0

S'il vous plaît apprendre comment [code de format] (http : //stackoverflow.com/help/formatting) correctement ... – aschipfl

+0

Pas de soucis, bienvenue sur Stackoverflow. Êtes-vous capable de faire écho quelque chose après avoir démarré le winscp.com? Est-ce que le script fonctionne sans la première ligne? –

+0

Lorsque je copie mon code coller dans cmd cela fonctionne parfaitement. Mais quand je l'ai mis dans un fichier .bat le résultat est que le code s'arrête pour une raison quelconque après le démarrage winscp – cwaldschmit

Répondre

1

Essayez ceci:

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 

Je crois que le problème est que le script attend le WinSCP pour quitter avant d'exécuter quoi que ce soit d'autre. L'ajout de la commande start exécutera les lignes suivantes dès que winscp est démarré, ce qui pourrait être ce que vous voulez.

Vous utilisez peut-être le problème. WinSCP a un mode de script, ce que vous voulez probablement utiliser. Regardez-le ici: https://winscp.net/eng/docs/scripting. De cette façon, vous voudrez peut-être mettre cela dans un fichier séparé, disons que 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 

puis l'exécuter avec:

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

Ceci est le résultat de votre code http://i64.tinypic.com/121wh2u.png – cwaldschmit

+0

Que voulez-vous comme la commande de mise à faire? –

+0

Je veux connecter un serveur sftp et envoyer des fichiers de mon PC local au serveur. C'est tout. – cwaldschmit