3 votes

Liste des répertoires SFTP vers un fichier txt local

J'ai des problèmes en essayant de lister un répertoire sur mon serveur sftp vers un fichier .txt local.

Je dois utiliser la ligne de commande. J'ai donc découvert que Putty est le seul client capable de faire cela.

Alors, en utilisant du mastic, j'ai commencé à travailler pour trouver la solution. J'ai réussi à aller jusqu'à lister le répertoire que je veux (dans psftp et pscp) qui sont le client sftp de putty et le client sécurisé de téléchargement de fichiers de putty.

En utilisant ce script lorsque pscp.exe (pour un script .bat) :

start /WAIT D:\pscp.exe -sftp -v -batch -pw password -ls username@server.host:/directory/subdirectory/subdirectory

Ceci liste le répertoire. J'ai essayé d'ajouter " C:\filelist.txt "à la fin, mais cela ne fait que créer un fichier local vide, les répertoires n'y sont pas listés.

Et en utilisant ce script quand psftp.exe (Pour .bat script aussi) :

start /WAIT D:\psftp.exe username@server.host -v -be -bc -batch -pw password -b D:\listcommands.scr

Où listcommand.scr est appelé pour lancer plus de commandes dans le psftp, il contient :

ls /directory/subdirectory/subdirectory > D:\listdir.txt

Mais aucun des deux n'écrira la liste des répertoires dans le fichier .txt local. La commande psftp.exe ne crée même pas un fichier .txt vide comme le fait la commande pscp.exe. La commande listcommands.scr ne fonctionne pas non plus sans le ">".

Merci à tous ceux qui ont de l'aide à offrir à ce sujet.

4voto

Paul H Points 1814

Je pense que le fichier "filelist.txt" est vide parce que vous lancez une nouvelle commande et que, par conséquent, la sortie de la commande "filelist.txt" est vide. psftp est écrite sur un stdout différent de celui que vous redirigez vers un fichier.

Je viens d'essayer start /WAIT D:\pscp.exe -sftp -v -batch -pw password -ls username@server.host:/directory/subdirectory/subdirectory > c:\filelist.txt et j'obtiens également un fichier vide ; cependant, si je supprime l'option start /WAIT de la ligne de commande filelist.txt contient maintenant la sortie correcte.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X