Batch Index du Forum
S’enregistrerRechercherFAQMembresGroupesConnexion
Répondre au sujet Page 1 sur 1
Recuperer Chemin de Repertoire comportant des Espaces
Auteur Message
Répondre en citant
Message Recuperer Chemin de Repertoire comportant des Espaces 
Bonjour,

Je suis nouveau et debutant.

Je viens de démarrer en batch (amateur) et souhaiterais faire quelques routines assez simples a priori mais je rencontre déjà des grosses difficultés que je n'ai pas réussi à résoudre avec de nombreuses recherche sur le web (ou sur ce forum)

Tout d'abord, dans un seul fichier *.bat, je souhairerais recuperer le chemin courant afin de l'utiliser par la suite.

J'ai fait ceci qui fonctionne très bien...jusqu'à ce qu'il rencontre des espaces type "\program files".

@Title Commande CHDIR pour Afficher Chemin

Echo Mon Chemin est :
CHDIR
Echo.
Pause

For /f %%d in ('chdir') do set chemin=%%d
Echo.
Echo Le Chemin du Fichier.Bat en cours est : %chemin%
Echo.

Des que le chemin rencontre un espace il me retourne le chemin jusqu'à l'espace
ex : si je suis dans C:\Program Files
CHDIR me renvoie bien C:\Program Files
mais la variable %chemin% ne prend que la valeur C:\Program

Merci de votre aide

Olivier




______________________________________________________
Olivier2.6
Message Publicité 
PublicitéSupprimer les publicités ?


Répondre en citant
Message Recuperer Chemin de Repertoire comportant des Espaces 
hello!

mets des guillemets autour de chemin :
Code:
CHDIR "%chemin%"


@+




______________________________________________________
--
> Que pensez vous de l'ajout du repertoire point dans $PATH ?
Ma version de troll 18.0.32 beta 3 vient de me faire un core dump.
-+- SE in Guide du Linuxien Pervers : Bien développer son troll -+-

[Dos9]
Visiter le site web du posteur Skype
Répondre en citant
Message Recuperer Chemin de Repertoire comportant des Espaces 
Merci pour ta réponse.

Je pensais effectivement qu'il s'agissait d'un problème de guillements, généralement utilisés pour que le espaces dans les noms de chemin soient bien pris en compte.

Malheureusement, je ne sais pas exactement où les mettre. J'ai essayé différents endroit mais rien ne fonctionne.

Je n'avais pas essayé autour de la variable mais cela me donne le meme resultat.

Voici ce que j'ai inscrit dans mon script suite à ta proposition :

For /f %%d in ('chdir') do set chemin=%%d
Echo.
Echo Le Chemin du Fichier.Bat en cours est : CHDIR "%chemin%"
CHDIR "%chemin%"
Echo "%chemin%"
Echo.

Mais cela ne change rien.

J'avais au préalable essayé :
For /f %%d in ("'chdir'") do set chemin=%%d
ou
For /f %%d in "('chdir')" do set chemin=%%d
ou
For /f %%d in ('chdir') do set chemin="%%d"

Mais rien ne fonctionne.

Merci
Olivier

PS : Désolé, je me suis aperçu que j'avais posté dans le mauvais forum. Puis-je le déplacer dans le thème "Aide Programmation" ? Merci

Edit de darkbatcher: c'est fait !




______________________________________________________
Olivier2.6
Répondre en citant
Message Recuperer Chemin de Repertoire comportant des Espaces 
Bonjour,
vu que tu utilise une boucle for, celle-ci doit mettre par defaut lrs
espaces comme delimiteurs.
Je pense qu'il faut rajouter un truc du genre /F "tokens=*" juste avant
le %%D pour que la boucle selectionne tous le texte er ne se delimite pas
qu'au espaces.
Apres je ne peux pas plus t'aider car je ne connais pas bien les boucles for.



Répondre en citant
Message Recuperer Chemin de Repertoire comportant des Espaces 
Bonjour


For /f "tokens*" %%d in ('dir /b') do echo "%%d"




______________________________________________________
Faites paraitre votre batch sur BatchClipboard
Visiter le site web du posteur
Message Recuperer Chemin de Repertoire comportant des Espaces 


Montrer les messages depuis:
Répondre au sujet Page 1 sur 1
  



Index | créer un forum | Forum gratuit d’entraide | Annuaire des forums gratuits | Signaler une violation | Conditions générales d'utilisation
Copyright 2008 - 2016 // Batch