Problème dans l'exécution du fichier batch dans WinSCP
-
28-10-2019 - |
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 ....
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