2017-07-17 3 views
1

with username & password argumentsWinSCP pour vérifier si les fichiers sur un hôte ou non existent en utilisant un fichier de commandes - pour exécuter tous les jours

Je suis en train d'automatiser un appel à un serveur distant en utilisant WinSCP qui est une tâche quotidienne redondante. Je veux que le fichier séquentiel appelle la machine distante - fournissez le nom d'utilisateur et le mot de passe, et vérifiez plus tard s'il y a des fichiers.

Jusqu'à présent, je suis en mesure de démarrer un serveur WinSCP mais le fichier de commandes ne consomme pas de nom d'utilisateur et de mot de passe - il les demande toujours et/ou fournit une erreur concernant un trop grand nombre d'arguments.

chdir /d D:\Program Files\WinSCP\ 
winscp.com 172.18.186.39 username password 

simple call prompting

+0

Peut-être que vous pouvez canaliser l'entrée? Comme: 'echo Username | Commande WinSCP'? Je ne suis pas sûr que WinSCP prend en charge la tuyauterie, mais essayez-le – SteveFest

+0

En voyant votre historique de questions, notez que sur Stack Overflow, vous [devriez accepter une réponse, si cela vous a aidé] (// stackoverflow.com/help/someone- réponses). Vous n'avez accepté aucune réponse à vos questions, jusqu'à présent. –

+0

@SteveFest - mate qui ne fonctionne pas – harveySp

Répondre

0

Votre syntaxe ne ressemble même pas à distance WinSCP command-line syntax for scripting.


Voir l'article sur WinSCP Checking file existence using scripting:

@echo off 

set REMOTE_PATH=/home/user/test.txt 
winscp.com /command^
    "open ftp://username:[email protected]/"^
    "stat %REMOTE_PATH%"^
    "exit" 

if %ERRORLEVEL% neq 0 goto error 

echo File %REMOTE_PATH% exists 
rem Do something 
exit /b 0 

:error 
echo Error or file %REMOTE_PATH% not exists 
exit /b 1 

L'exemple ci-dessus est pour le protocole FTP. Vous n'avez pas dit quel protocole utilisiez-vous? Si ce n'est pas FTP, vous devez modifier le open command en conséquence. Vous pouvez avoir WinSCP GUI generate the open command for you.


Une fois le fichier de traitement par lots prêt, utilisez Windows Scheduler to call it regularly.

+0

Je ne suis vraiment pas sûr, où est-ce que je manque votre commentaire disant si je n'ai pas suivi le «https://winscp.net/eng/docs/commandline#scripting» mais j'utilise fondamentalement win7 OS donc des trucs unix ne fonctionneront pas . Et ce que je suis venu avec à ce jour est tout simplement appel automatisé de WinSCP par l'invite de commande avec le script comme suit '1 chdir/d D: \ Program Files \ WinSCP \ 2 winscp.com hostname' - ce commencera un winscp.com et invitera à demander le nom d'utilisateur/mot de passe. Maintenant, je veux être en mesure de mettre un nom d'utilisateur et mot de passe - que je trouve difficile, comme décrit dans IMG ci-dessus. J'espère que j'ai été clair ici – harveySp

+0

J'appelle un SFTP – harveySp

+0

Que voulez-vous dire par * "trucs unix ne fonctionnera pas" *? Il n'y a pas de truc * unix * dans ma réponse. Avez-vous essayé le fichier batch de ma réponse? –