Signaler

Mon cleaner en batch ne fonctionne pas... [Résolu]

Posez votre question Alvin1614 23Messages postés lundi 24 avril 2017Date d'inscription 7 octobre 2017 Dernière intervention - Dernière réponse le 18 juin 2017 à 13:23 par barnabe0057
Bonjour,
Je ne suis pas très très doué en batch mais j'adore quand même ce langage de programmation.
Je fais des jeux, des micrologiciels mais j'ai essayer de faire un cleaner (un microprogramme pour supprimer définitivement des dossier, des exécutables et d'autres chose) mais il ne fonctionne pas (quand on valide notre choix il met erreur de syntaxe /t était inattendu .
Alors j’espérais que quelqu'un pourrait m'aider.

SVP répondez moi au plus vite j'en ai absolument besoin...

Voici le batch :
@echo off
title Clean
:ecrandebienvenue
call cadrecleaner.bat

:etape1
cls
echo Que voulez-vous supprimer ?
echo.
echo Entrez ci-dessous le chemin d'acces de votre fichier puis appuiez sur entre.
echo.
echo EXEMPLE :
echo C:/Users/JFAMGAMES/Downloads/LPJSEB.exe
echo.
echo /!\ N'oubliez pas de rajoutez l'extension de votre fichier sauf si c'est un dossier.
echo Par exemple .exe .bat .vbs .txt .pdf ...
echo.
echo.

set /p %fichierasupprimer%=

:etape
cls
echo Voulez-vous vraiment supprimer %fichierasupprimer%
echo 1=Oui
echo 2=Non
echo Tapez 1 ou 2 puis appuiez sur entre
if "%etesvoussuredevouloirsupprimerlefichier%"=="1" goto :jesuissurdevouloirsupprimercefichier
if "%etesvoussuredevouloirsupprimerlefichier%"=="2" goto :jeneveuxpassupprimercefichier


set /p %etesvoussuredevouloirsupprimerlefichier%=


:jesuissurdevouloirsupprimercefichier

echo suppression de votre fichier en cours
echo -
Timeout /t 1 /nobreak > nul
cls
echo --
Timeout /t 1 /nobreak > nul
cls
echo ---
Timeout /t 1 /nobreak > nul
cls
echo ----
Timeout /t 1 /nobreak > nul
cls
echo -----
Timeout /t 1 /nobreak > nul
echo ------
Timeout /t 1 /nobreak > nul
cls
echo -------
Timeout /t 1 /nobreak > nul
cls
echo -------------------
Timeout /t 1 /nobreak > nul
cls
echo ---------------------------------
timeout /t /nobreak >nul
:jeneveuxpassupprimercefichier
echo Vos fichiers n'ont pas ete supprimer
timeout /t 2 /nobreak >nul
cls
goto :etape3.1


:etape3
erase %fichierasupprimer%
echo Suppression de %fichierasupprimer% termine
echo.
echo Voulez-vous supprimez autres choses
echo.
echo 1=oui
echo 2=non
if "%ouiounonjeveuxouneveuxpascontinuez%"=="1" goto :etape1
if "%ouiounonjeveuxouneveuxpascontinuez%"=="2" goto :eof
set /p %ouiounonjeveuxouneveuxpascontinuez%=

:eof

echo Au revoir
timeout /t 3 >nobreak nul
exit

:etape3.1

echo Voulez-vous supprimez quelques choses d'autre
echo.
echo 1=oui
echo 2=non
if "%ouiounonjeveuxouneveuxpascontinuez%"=="1" goto :etape1
if "%ouiounonjeveuxouneveuxpascontinuez%"=="2" goto :eof
set /p %ouiounonjeveuxouneveuxpascontinuez%=




Et voici le cadre :
@echo off
title Cleaner

:Cadre Bienvenue
@echo off

echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
echo º º
echo º º
echo º º
echo º º
echo º ccccccc ll eeeeeee aa nnnn nn º
echo º cc ll ee aa aa nn nn nn º
echo º cc ll ee aa aa nn nn nn º
echo º cc ll eeeeeee aa aa nn nn nn º
echo º cc ll ee aaaaaaaaaaa nn nn nn º
echo º cc ll ee aa aa nn nn nn º
echo º ccccccc lllllllll eeeeeee aa aa nn nnnn º
echo º º
echo º º
echo º º
echo º º
echo º Bienvenue º
echo º º
echo º º
echo º º
echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ

echo Appuiez sur une touche pour acceder au cleaner
pause >nul


Merci d'avance
Utile
+0
plus moins
Bonjour,

Merci d'utiliser les balises syntaxiques quand tu postes du code.

Il y a des petites erreurs, dont 2 instructions timeout, dans une tu n'indiques pas la durée, dans l'autre tu as mis >nobreak au lieu de /nobreak

Un truc que je pige pas : tu mets les if avant le set /p à chaque fois, je ne pense pas que ça puisse fonctionner comme ça


“L'intelligence artificielle se définit comme le contraire de la bêtise naturelle.”
Donnez votre avis
Utile
+0
plus moins
OK je change ça tout de suite;

Merci
Donnez votre avis
Utile
+0
plus moins
Merci pour ta réponse barnabe0057 je viens de tout changer mais cela ne fonctionne toujours pas....
barnabe0057 11572Messages postés lundi 2 mars 2009Date d'inscription ContributeurStatut 16 octobre 2017 Dernière intervention - 17 juin 2017 à 17:38
Reposte ton code, avec les balises cette fois.
Répondre
Donnez votre avis
Utile
+0
plus moins
d'accord
Donnez votre avis
Utile
+0
plus moins
@echo off

title Clean
:ecrandebienvenue
call cadrecleaner.bat

:etape1
cls
echo Que voulez-vous supprimer ?
echo.
echo Entrez ci-dessous le chemin d'acces de votre fichier puis appuiez sur entre.
echo.
echo EXEMPLE :
echo C:/Users/JFAMGAMES/Downloads/LPJSEB.exe
echo.
echo /!\ N'oubliez pas de rajoutez l'extension de votre fichier sauf si c'est un dossier.
echo Par exemple .exe .bat .vbs .txt .pdf ...
echo.
echo.

set /p %fichierasupprimer%=

:etape
cls
echo Voulez-vous vraiment supprimer %fichierasupprimer%
echo 1=Oui
echo 2=Non
echo Tapez 1 ou 2 puis appuiez sur entre



set /p %etesvoussuredevouloirsupprimerlefichier%=
if "%etesvoussuredevouloirsupprimerlefichier%"=="1" goto :jesuissurdevouloirsupprimercefichier
if "%etesvoussuredevouloirsupprimerlefichier%"=="2" goto :jeneveuxpassupprimercefichier

:jesuissurdevouloirsupprimercefichier

echo suppression de votre fichier en cours
echo -
Timeout /t 1 /nobreak > nul
cls
echo --
Timeout /t 1 /nobreak > nul
cls
echo ---
Timeout /t 1 /nobreak > nul
cls
echo ----
Timeout /t 1 /nobreak > nul
cls
echo -----
Timeout /t 1 /nobreak > nul
cls
echo ------
Timeout /t 1 /nobreak > nul
cls
echo -------
Timeout /t 1 /nobreak > nul
cls
echo -------------------
Timeout /t 1 /nobreak > nul
cls
echo ---------------------------------
timeout /t 1 /nobreak >nul

goto :etape3
:jeneveuxpassupprimercefichier
echo Vos fichiers n'ont pas ete supprimer
timeout /t 2 /nobreak >nul
cls
goto :etape3.1
:etape3
del %fichierasupprimer%
echo Suppression de %fichierasupprimer% termine
echo.
echo Voulez-vous supprimez autres choses
echo.
echo 1=oui
echo 2=non
set /p %ouiounonjeveuxouneveuxpascontinuez%=
if "%ouiounonjeveuxouneveuxpascontinuez%"=="1" goto :etape1
if "%ouiounonjeveuxouneveuxpascontinuez%"=="2" goto :eof
:eof

echo Au revoir
timeout /t 3 /nobreak nul
exit

:etape3.1

echo Voulez-vous supprimez quelques choses d'autre
echo.
echo 1=oui
echo 2=non
set /p %ouiounonjeveuxouneveuxpascontinuez%=
if "%ouiounonjeveuxouneveuxpascontinuez%"=="1" goto :etape1
if "%ouiounonjeveuxouneveuxpascontinuez%"=="2" goto :eof
barnabe0057 11572Messages postés lundi 2 mars 2009Date d'inscription ContributeurStatut 16 octobre 2017 Dernière intervention - 17 juin 2017 à 18:01
Et les balises de code ??? Edite ton message.
Répondre
Donnez votre avis
Utile
+0
plus moins
il n'y a pas BATCH dans les propositions de codes
barnabe0057 11572Messages postés lundi 2 mars 2009Date d'inscription ContributeurStatut 16 octobre 2017 Dernière intervention - 17 juin 2017 à 18:09
Pas besoin de cliquer sur la flèche, la simple balise </code> suffit.
Répondre
Donnez votre avis
Utile
+0
plus moins
@echo off

title Clean
:ecrandebienvenue
call cadrecleaner.bat

:etape1
cls
echo Que voulez-vous supprimer ?
echo.
echo Entrez ci-dessous le chemin d'acces de votre fichier puis appuiez sur entre.
echo.
echo EXEMPLE :
echo C:/Users/JFAMGAMES/Downloads/LPJSEB.exe
echo.
echo /!\ N'oubliez pas de rajoutez l'extension de votre fichier sauf si c'est un dossier.
echo Par exemple .exe .bat .vbs .txt .pdf ...
echo.
echo.

set /p %fichierasupprimer%=

:etape
cls
echo Voulez-vous vraiment supprimer %fichierasupprimer%
echo 1=Oui
echo 2=Non
echo Tapez 1 ou 2 puis appuiez sur entre



set /p %etesvoussuredevouloirsupprimerlefichier%=
if "%etesvoussuredevouloirsupprimerlefichier%"=="1" goto :jesuissurdevouloirsupprimercefichier
if "%etesvoussuredevouloirsupprimerlefichier%"=="2" goto :jeneveuxpassupprimercefichier

:jesuissurdevouloirsupprimercefichier

echo suppression de votre fichier en cours
echo -
Timeout /t 1 /nobreak > nul
cls
echo --
Timeout /t 1 /nobreak > nul
cls
echo ---
Timeout /t 1 /nobreak > nul
cls
echo ----
Timeout /t 1 /nobreak > nul
cls
echo -----
Timeout /t 1 /nobreak > nul
cls
echo ------
Timeout /t 1 /nobreak > nul
cls
echo -------
Timeout /t 1 /nobreak > nul
cls
echo -------------------
Timeout /t 1 /nobreak > nul
cls
echo ---------------------------------
timeout /t 1 /nobreak >nul

goto :etape3
:jeneveuxpassupprimercefichier
echo Vos fichiers n'ont pas ete supprimer
timeout /t 2 /nobreak >nul
cls
goto :etape3.1
:etape3
del %fichierasupprimer%
echo Suppression de %fichierasupprimer% termine
echo.
echo Voulez-vous supprimez autres choses
echo.
echo 1=oui
echo 2=non
set /p %ouiounonjeveuxouneveuxpascontinuez%=
if "%ouiounonjeveuxouneveuxpascontinuez%"=="1" goto :etape1
if "%ouiounonjeveuxouneveuxpascontinuez%"=="2" goto :eof
:eof

echo Au revoir
timeout /t 3 /nobreak nul
exit

:etape3.1

echo Voulez-vous supprimez quelques choses d'autre
echo.
echo 1=oui
echo 2=non
set /p %ouiounonjeveuxouneveuxpascontinuez%=
if "%ouiounonjeveuxouneveuxpascontinuez%"=="1" goto :etape1
if "%ouiounonjeveuxouneveuxpascontinuez%"=="2" goto :eof
Donnez votre avis
Utile
+0
plus moins
voilà, j'ai cliqué sur code
barnabe0057 11572Messages postés lundi 2 mars 2009Date d'inscription ContributeurStatut 16 octobre 2017 Dernière intervention - 17 juin 2017 à 18:17
Il faut mettre ton script entre les deux balises </code></code>
Répondre
Donnez votre avis
Utile
+0
plus moins
@echo off
title Clean
:ecrandebienvenue
call cadrecleaner.bat

:etape1
cls
echo Que voulez-vous supprimer ?
echo.
echo Entrez ci-dessous le chemin d'acces de votre fichier puis appuiez sur entre.
echo.
echo EXEMPLE :
echo C:/Users/JFAMGAMES/Downloads/LPJSEB.exe
echo.
echo /!\ N'oubliez pas de rajoutez l'extension de votre fichier sauf si c'est un dossier.
echo Par exemple .exe .bat .vbs .txt .pdf ...
echo.
echo.

set /p %fichierasupprimer%=

:etape
cls
echo Voulez-vous vraiment supprimer %fichierasupprimer%
echo 1=Oui
echo 2=Non
echo Tapez 1 ou 2 puis appuiez sur entre



set /p %etesvoussuredevouloirsupprimerlefichier%=
if "%etesvoussuredevouloirsupprimerlefichier%"=="1" goto :jesuissurdevouloirsupprimercefichier
if "%etesvoussuredevouloirsupprimerlefichier%"=="2" goto :jeneveuxpassupprimercefichier

:jesuissurdevouloirsupprimercefichier

echo suppression de votre fichier en cours
echo -
Timeout /t 1 /nobreak > nul
cls
echo --
Timeout /t 1 /nobreak > nul
cls
echo ---
Timeout /t 1 /nobreak > nul
cls
echo ----
Timeout /t 1 /nobreak > nul
cls
echo -----
Timeout /t 1 /nobreak > nul
cls
echo ------
Timeout /t 1 /nobreak > nul
cls
echo -------
Timeout /t 1 /nobreak > nul
cls
echo -------------------
Timeout /t 1 /nobreak > nul
cls
echo ---------------------------------
timeout /t 1 /nobreak >nul

goto :etape3
:jeneveuxpassupprimercefichier
echo Vos fichiers n'ont pas ete supprimer
timeout /t 2 /nobreak >nul
cls
goto :etape3.1
:etape3
del %fichierasupprimer%
echo Suppression de %fichierasupprimer% termine
echo.
echo Voulez-vous supprimez autres choses
echo.
echo 1=oui
echo 2=non
set /p %ouiounonjeveuxouneveuxpascontinuez%=
if "%ouiounonjeveuxouneveuxpascontinuez%"=="1" goto :etape1
if "%ouiounonjeveuxouneveuxpascontinuez%"=="2" goto :eof
:eof

echo Au revoir
timeout /t 3 /nobreak nul
exit

:etape3.1

echo Voulez-vous supprimez quelques choses d'autre
echo.
echo 1=oui
echo 2=non
set /p %ouiounonjeveuxouneveuxpascontinuez%=
if "%ouiounonjeveuxouneveuxpascontinuez%"=="1" goto :etape1
if "%ouiounonjeveuxouneveuxpascontinuez%"=="2" goto :eof







barnabe0057 11572Messages postés lundi 2 mars 2009Date d'inscription ContributeurStatut 16 octobre 2017 Dernière intervention - 17 juin 2017 à 18:26
Ok dans ton dernier timeout il manque un caractère, je te laisse chercher.

Autre chose plus importante, quand tu utilises SET tu ne dois pas mettre les %% autour de la variable :
set /p fichierasupprimer=
Répondre
Donnez votre avis
Utile
+0
plus moins
Ok merci je regarde tout de suite
Donnez votre avis
Utile
+0
plus moins
Merci il fonctionne parfaitement maintenant....
barnabe0057 11572Messages postés lundi 2 mars 2009Date d'inscription ContributeurStatut 16 octobre 2017 Dernière intervention - 18 juin 2017 à 13:23
De rien ;)
Répondre
Donnez votre avis

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !