A voir également:
- Problème batch invite de commandes
- Invite de commande - Guide
- Fichier batch - Guide
- Commandes terminal mac - Guide
- 'Pip' n'est pas reconnu en tant que commande interne ou externe, un programme exécutable ou un fichier de commandes. ✓ - Forum Python
- Retrouver clé windows 10 invite de commande - Guide
3 réponses
jee pee
Messages postés
40476
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
26 novembre 2024
9 428
Modifié le 30 mai 2019 à 17:04
Modifié le 30 mai 2019 à 17:04
Bonjour,
Pour rentrer un choix O/N tu devrais utiliser la commande CHOICE (derrière il faut tester errorlevel à 1 ou 2). Ou voir la bonne syntaxe de la commande SET
Pour rentrer un choix O/N tu devrais utiliser la commande CHOICE (derrière il faut tester errorlevel à 1 ou 2). Ou voir la bonne syntaxe de la commande SET
@ECHO OFF CHOICE /C ON /M "Êtes vous sûr de vouloir renommer le fichier ? " echo %ERRORLEVEL% set /p cho=Êtes vous sûr de vouloir renommer le fichier (O/N) ? echo %cho% pause
little boy62
Messages postés
3591
Date d'inscription
lundi 11 novembre 2013
Statut
Membre
Dernière intervention
19 octobre 2024
1 766
Modifié le 31 mai 2019 à 13:05
Modifié le 31 mai 2019 à 13:05
Salut.
Pour ton code...
enlève le >
Et d'ailleurs, tu crées non pas un fichier, mais un dossier.
Donc, ton code (corrigé) permet donc de renommer (ou non) un dossier, pas un fichier....
Par contre, tu ne mets pas de dossier complet (TestRen)
-> Si tu lances ton bat normalement, le dossier sera créé/renommé là où se trouve le fichier bat
-> Si tu lances ton bat en tant qu'admin, le dossier actuel, c'est c:\windows\system32, et donc le dossier sera créé/renommé dans system32
Pour que le dossier renommé/crée soit dans le même dossier que ton bat, il faut indiquer que le dossier actuel, c'est le dossier où se trouve ton bat...
Donc, après ton @echo off, rajoute cette ligne :
Cela aura pour effet d'indiquer que le dossier actuel, c'est vraiment le dossier où est exécuté ton fichier bat.
++
Pour ton code...
set/p"cho=>"
enlève le >
Et d'ailleurs, tu crées non pas un fichier, mais un dossier.
Donc, ton code (corrigé) permet donc de renommer (ou non) un dossier, pas un fichier....
Par contre, tu ne mets pas de dossier complet (TestRen)
-> Si tu lances ton bat normalement, le dossier sera créé/renommé là où se trouve le fichier bat
-> Si tu lances ton bat en tant qu'admin, le dossier actuel, c'est c:\windows\system32, et donc le dossier sera créé/renommé dans system32
Pour que le dossier renommé/crée soit dans le même dossier que ton bat, il faut indiquer que le dossier actuel, c'est le dossier où se trouve ton bat...
Donc, après ton @echo off, rajoute cette ligne :
cd %~dp0
Cela aura pour effet d'indiquer que le dossier actuel, c'est vraiment le dossier où est exécuté ton fichier bat.
++
@ECHO OFF
cd %~dp0
:d
echo Etes vous sur de vouloir renommer le fichier ?
echo.
echo O:Oui N:Non
choice /c on /n
if %errorlevel%==2 goto oui
if %errorlevel%==1 exit
rename ton_dossier nouveau_nom
cls
echo Dossier renomme. Le renommer a nouveau ?
echo.
choice /c on /n
if %errorlevel%==2 exit
if %errorlevel%==1 goto d
pause
cd %~dp0
:d
echo Etes vous sur de vouloir renommer le fichier ?
echo.
echo O:Oui N:Non
choice /c on /n
if %errorlevel%==2 goto oui
if %errorlevel%==1 exit
rename ton_dossier nouveau_nom
cls
echo Dossier renomme. Le renommer a nouveau ?
echo.
choice /c on /n
if %errorlevel%==2 exit
if %errorlevel%==1 goto d
pause