Utiliser variable DOS
Résolu/Fermé
Murlox
-
18 juil. 2009 à 14:58
dubcek Messages postés 18758 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 24 décembre 2024 - 19 juil. 2009 à 07:59
dubcek Messages postés 18758 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 24 décembre 2024 - 19 juil. 2009 à 07:59
A voir également:
- Utiliser variable DOS
- Utiliser chromecast - Guide
- Comment utiliser l'ia - Accueil - Guide Intelligence artificielle
- Utiliser iphone comme webcam - Guide
- Comment utiliser utorrent - Télécharger - Téléchargement & Transfert
- Comment utiliser wetransfer gratuit ? - Guide
6 réponses
dubcek
Messages postés
18758
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
24 décembre 2024
5 623
18 juil. 2009 à 15:02
18 juil. 2009 à 15:02
hello
mettre des " à cause des espaces
copy TOTO.txt "%currentpath%"
mettre des " à cause des espaces
copy TOTO.txt "%currentpath%"
Nyctaclope
Messages postés
5315
Date d'inscription
dimanche 6 avril 2008
Statut
Membre
Dernière intervention
11 décembre 2022
1 253
18 juil. 2009 à 15:14
18 juil. 2009 à 15:14
Bonjour !
La syntaxe correcte serait déjà SET currentpath=cd, sinon cela voudrait dire que CD est déjà une variable.
%..% est la syntaxe de récupération de la valeur de la variable.
Si %cd% était effectivement la chaîne utilisée ( je ne suis pas sûr que ce soit autorisé .. ) il faudrait alors doubler les % dans %currentpath% pour préciser que % est un caractère littéral, et non un code de syntaxe.
Par ailleurs je me demande si COPY est effectivement capable d'écrire ( graver ) sur un CD ?
Essaye d'abord une destination vers le disque dur, pour tester la syntaxe ...
A+
Nyctaclope
La syntaxe correcte serait déjà SET currentpath=cd, sinon cela voudrait dire que CD est déjà une variable.
%..% est la syntaxe de récupération de la valeur de la variable.
Si %cd% était effectivement la chaîne utilisée ( je ne suis pas sûr que ce soit autorisé .. ) il faudrait alors doubler les % dans %currentpath% pour préciser que % est un caractère littéral, et non un code de syntaxe.
Par ailleurs je me demande si COPY est effectivement capable d'écrire ( graver ) sur un CD ?
Essaye d'abord une destination vers le disque dur, pour tester la syntaxe ...
A+
Nyctaclope
Nyctaclope
Messages postés
5315
Date d'inscription
dimanche 6 avril 2008
Statut
Membre
Dernière intervention
11 décembre 2022
1 253
18 juil. 2009 à 15:24
18 juil. 2009 à 15:24
PS :
Je pense, à la réflexion, que ma réponse est erronée, car pour toi CD est déjà une variable ( tu as fait un SET CD= ...)
Mes excuses ...
A+
Nyctaclope
Je pense, à la réflexion, que ma réponse est erronée, car pour toi CD est déjà une variable ( tu as fait un SET CD= ...)
Mes excuses ...
A+
Nyctaclope
Murlox
>
Nyctaclope
Messages postés
5315
Date d'inscription
dimanche 6 avril 2008
Statut
Membre
Dernière intervention
11 décembre 2022
18 juil. 2009 à 15:26
18 juil. 2009 à 15:26
CD comme la syntaxe DOS hein, pas comme CD-ROM !
@Nyctalope
Ca marche niquel avec
set currentpath=%cd%
copy TOTO.txt "%currentpath%"
Et non je n'essaie pas de graver sur un CD? en fait je voulais que le batch s'éxecute depuis et sur ma clef USB et sur n'importe quel PC, donc contourner le changement de lettre de cette clef.
Merci à vous deux en tout cas ;-)
Ca marche niquel avec
set currentpath=%cd%
copy TOTO.txt "%currentpath%"
Et non je n'essaie pas de graver sur un CD? en fait je voulais que le batch s'éxecute depuis et sur ma clef USB et sur n'importe quel PC, donc contourner le changement de lettre de cette clef.
Merci à vous deux en tout cas ;-)
Nyctaclope
Messages postés
5315
Date d'inscription
dimanche 6 avril 2008
Statut
Membre
Dernière intervention
11 décembre 2022
1 253
18 juil. 2009 à 15:26
18 juil. 2009 à 15:26
Merci de l'info ..
Et bravo à Dubcek ! ..
A+
Nyctaclope
Et bravo à Dubcek ! ..
A+
Nyctaclope
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
dubcek
Messages postés
18758
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
24 décembre 2024
5 623
18 juil. 2009 à 15:35
18 juil. 2009 à 15:35
il y a d'autres variables automatiquement définies:
help set
%CD% - se développe en la chaîne du répertoire en cours.
%DATE% - se développe en la date actuelle en utilisant le même
format que la commande DATE.
%TIME% - se développe en l'heure en cours en utilisant le même
format que la commande TIME.
%RANDOM% - se développe en un nombre aléatoire compris entre 0 et 32767.
%ERRORLEVEL% - se développe en la valeur en cours de ERRORLEVEL
%CMDEXTVERSION% - se développe en le numéro de version des
extensions du processeur de commande en cours.
%CMDCMDLINE% - se développe en la ligne de commande originale
qui a appelé le processeur de commande.
help set
%CD% - se développe en la chaîne du répertoire en cours.
%DATE% - se développe en la date actuelle en utilisant le même
format que la commande DATE.
%TIME% - se développe en l'heure en cours en utilisant le même
format que la commande TIME.
%RANDOM% - se développe en un nombre aléatoire compris entre 0 et 32767.
%ERRORLEVEL% - se développe en la valeur en cours de ERRORLEVEL
%CMDEXTVERSION% - se développe en le numéro de version des
extensions du processeur de commande en cours.
%CMDCMDLINE% - se développe en la ligne de commande originale
qui a appelé le processeur de commande.
Nyctaclope
Messages postés
5315
Date d'inscription
dimanche 6 avril 2008
Statut
Membre
Dernière intervention
11 décembre 2022
1 253
18 juil. 2009 à 21:51
18 juil. 2009 à 21:51
Re !
Eh bien merci de cette info ...
Et notamment je ne connaissais pas %CD% d'où mon erreur ...
J'en étais resté au "vieux" DOS, qui n'avait pas tout cela ...
Par contre je serais ravi que tu m'explique les "" car :
- Copy sait bien reconnaître deux arguments et plus séparés par un espace, sans nécessité de "" ..
- pour moi les guillemets obligeraient à reconnaître %xxxxx% comme une chaîne et non comme une variable ??
Merci d'avance !
A+
Nyctaclope
Eh bien merci de cette info ...
Et notamment je ne connaissais pas %CD% d'où mon erreur ...
J'en étais resté au "vieux" DOS, qui n'avait pas tout cela ...
Par contre je serais ravi que tu m'explique les "" car :
- Copy sait bien reconnaître deux arguments et plus séparés par un espace, sans nécessité de "" ..
- pour moi les guillemets obligeraient à reconnaître %xxxxx% comme une chaîne et non comme une variable ??
Merci d'avance !
A+
Nyctaclope
dubcek
Messages postés
18758
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
24 décembre 2024
5 623
19 juil. 2009 à 07:59
19 juil. 2009 à 07:59
le problème c'est les espaces dans les chemins ou noms de fichiers, il faut des " pour que la commande DOS ne traite cela que comme un seul argument
$ dir > z
$ echo %cd%
C:\Documents and Settings\Nom Prenom\Mes documents\src
$ copy z %cd%\zz
La syntaxe de la commande est incorrecte.
$ copy z "%cd%\zz"
1 fichier(s) copié(s).
ou bien utiliser les noms courts DOS sans espaces, plus besoins de ":
C:\DOCUME~1\NOM~1\MESDOC~1\src
$ dir > z
$ echo %cd%
C:\Documents and Settings\Nom Prenom\Mes documents\src
$ copy z %cd%\zz
La syntaxe de la commande est incorrecte.
$ copy z "%cd%\zz"
1 fichier(s) copié(s).
ou bien utiliser les noms courts DOS sans espaces, plus besoins de ":
C:\DOCUME~1\NOM~1\MESDOC~1\src