Probleme avec un fichier Batch

ryniel Messages postés 5 Statut Membre -  
jee pee Messages postés 42572 Date d'inscription   Statut Modérateur Dernière intervention   -
@echo off 
if "%1"=="" goto manque  
if not exist %1 goto yoyo 
attrib +r %1 
goto fin 
:yoyo 
echo le fichier n'existe pas 
goto fin 
:manque 
echo vous avez oubli‚ le parametre 
goto fin 
:fin 


bonjour a tous, je suis nouveau et j'ai un exercice que je ne comprend pas!
pourquoi y a t'il ("%1"=="") dedans je comprend pas ça que ca fait la.
merci pour votre aide
A voir également:

4 réponses

jee pee Messages postés 42572 Date d'inscription   Statut Modérateur Dernière intervention   9 776
 
Bonjour,

En batch le test d'égalité c'est avec ==, pas =.

Le test vérifie que le paramètre &1 n'est pas vide, donc est bien renseigné.

PS : Pour la mise en forme des sources sur le forum : au dessus de la zone d'édition de tes messages, il y a des icônes pour les enrichissements du texte. Celle qui a cet aspect
<>▼
permet d'appliquer aux codes le format correspondant à sa nature.
Un petit tuto là https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code


0
ryniel Messages postés 5 Statut Membre
 
Désolé pour la mise en page et merci pour la réponse.
Si je comprends bien je dois retirer les " autour du %1 et du == ?
0
jee pee Messages postés 42572 Date d'inscription   Statut Modérateur Dernière intervention   9 776
 
non la syntaxe est correcte, les " ne sont pas pour ==, mais pour les valeurs avant et après, pour visualiser
mieux :
if "%1"  ==  "" goto manque 

si tu enlèves les ", cela ne va plus fonctionner correctement, quand &1 n'est pas renseigné, on a
if "" == ""
donc on va au label
manque
.
0
ryniel Messages postés 5 Statut Membre
 
Merci beaucoup,les cours d informatique en distanciel c'est pas évident de tout comprendre
0
ryniel Messages postés 5 Statut Membre
 
Bin ça ne fonctionne toujours pas, j ai deux types d erreur !
- gogo était inattendu
- manque était inattendu
Je suis perdu
0
jee pee Messages postés 42572 Date d'inscription   Statut Modérateur Dernière intervention   9 776
 
ce script doit être enregistré dans un fichier .cmd
il s’exécute en ouvrant une fenêtre ligne de commande de windows
on le lance à la main en passant un paramètre. Tout est nickel chez moi
D:\Temp\aaa>aaa.cmd
vous avez oubli├® le parametre

D:\Temp\aaa>aaa.cmd zzz
le fichier n'existe pas

D:\Temp\aaa>aaa.cmd for.txt

D:\Temp\aaa>
0
ryniel Messages postés 5 Statut Membre > jee pee Messages postés 42572 Date d'inscription   Statut Modérateur Dernière intervention  
 
Je ne comprends pas pourquoi ça ne fonctionne pas chez moi, mon invit de commande est ouverte en admin
Et je n ai aucun texte juste des messages d'erreur
0
jee pee Messages postés 42572 Date d'inscription   Statut Modérateur Dernière intervention   9 776 > ryniel Messages postés 5 Statut Membre
 
supprimes la 1ere ligne, echo off et mets ici tout ce qui s'affiche
0