Se connecter avec
S'enregistrer | Connectez-vous

.bat -> comment envoyer un dossier

Dernière réponse : dans Programmation
Lassé par la pub ? Créez un compte

Regarde sa ca devrait t'aider !

Citation :
o Pour déplacer et renommer, il existe une unique commande : rename.

La syntaxe pour cette commande est simple : rename source destination.

La source représente le fichier (ou dossier) que l’on veut renommer et/ou déplacer.
La destination représente le fichier (ou dossier) nouvellement renommé et/ou déplacé.
Ne pas oublier les guillemets si le nouveau nom contient des espaces.

Pour déplacer le fichier (ou dossier) il faut utiliser le chemin absolu comme dans la commande cd.
Un grand intérêt de cette commande est que l’on peut déplacer et renommer en même temps.


http://www.supinfo-projects.com/fr/2006/principes_ftp/2/
Expert Programmation

En batch, il faut utiliser la commande "ftp", après il faut faire une redirection clavier pour entrer les commandes.
Normalement ça marche, si tu te connecte bien, que ton firewall ne ke bloque pas, etc.

L'envoi


Comme pour la réception l'envoi bénéficie de deux fonctions : put et mput (multi put).

Leurs syntaxes respectives sont put fichier et mput fichier_1 [fichier_2] [fichier_3] ... [fichier_n].

En reprenant la même situation (i.e. Dossier distant : /www , Dossier local: D:\ ) on va rebalancer le fichier Golf.jpeg vers /www/test/ ):
Expert Programmation

Tu peux créer les répertoires avec la commande mkdir, puis copier les fichiers à l'intérieur.
Tu peux le faire avec un script utilisant "FOR /F" sur un "DIR /A: D /B" pour récupérer les liste de répertoire, et "DIR /A:-D /B" pour la liste des fichiers.
Tu fais des mkdir sur les repertoires, et des put sur les fichiers.
Tu fais en sorte que ce soit récursif, et c'est bon.
Expert Programmation

Les 2 "DIR" c'est pour lister soit uniquement les répertoires, soit uniquement les fichiers.
  1. FOR /F %%i in ('DIR /A:D /B') do quelquechose_sur_%%i
permet de boucler sur les lignes affichée, c'est-à-dire que pour chaque répertoire, ça va faire l'action quelquechose_sur_%%i.
http://fr.wikibooks.org/wiki/DOS/For
http://fr.wikibooks.org/wiki/DOS/For#Boucle_sur_le_retour_d.27une_commande

ça ce n'est que pour un niveau, après il faut descendre dans les sous-répertoires, et là il faut relancer le script en passant dans le sous-répertoire (ou le passer en paramètre).

Effectivement, ça complique la programmation de ce script, mais je ne vois pas comment faire autrement. Je pense que le faire en python serait plus simple :D 
Expert Programmation

Ton exemple ne veut rien dire, puisque ton script est censé lire les noms des répertoires avec la commande DIR

Essaie ça, ça pourrait t'aider:
  1. FOR /F %%i in ('DIR /A:-D /B') do @echo Fichier courant: %%i (faire un put)
  2.  
  3. FOR /F %%i in ('DIR /A:D /B') do (
  4. @echo Repertoire courant: %%i (faire un mkdir)
  5. REM rappeler le script ici pour faire le sous repertoire
  6. )


Lassé par la pub ? Créez un compte
Tom's guide dans le monde