Question

Je suis nouveau à Winscp et j'ai un problème dans l'exécution d'un fichier batch.

Le scénario est quelque chose comme ceci:

J'ai un fichier de commandes A, deux dossiers (jusqu'à B et bas dossiers C), des fichiers texte dans des dossiers D, un fichier texte E (différent des fichiers dans D) et un fichier PPK F. Toutes ces choses sont dans un dossier uniquement.

Le fichier batch A est d'avoir un script (script est illustré ci-dessous) qui contient du texte. Si que le contenu du texte sont vrais (moyens si que le texte (le contenu du texte sont liés à E à savoir si le fichier texte E est exécuté) est exécuté) puis uniquement les fichiers jusqu'à dossier B se déplace vers le bas dossier C

Et le script dans le fichier batch A est:

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

Et le contenu dans un fichier texte E est:

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

Je ne sais pas pourquoi les fichiers de dossier en ne se déplace pas vers le bas dans le dossier.

S'il vous plaît laissez-moi savoir où exactement le problème et la façon de résoudre ce problème ....

Était-ce utile?

La solution

Merci à Andriy M. Ses commentaires raclé la confusion et a donné la bonne réponse.

Voici la bonne syntaxe.

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

Le contenu dans un fichier texte f.txt est:

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

Autres conseils

J'sais si quelqu'un lit encore ce fil ou non .. Mais ce que je sais est commande « put » télécharger les fichiers de répertoire local au répertoire à distance. TS voulait « télécharger les fichiers du répertoire distant au répertoire local » donc je pense que la bonne commande est « get ».

Cordialement, Shen

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top