Porgrammation batch
jam-jam68140
Messages postés
18
Date d'inscription
Statut
Membre
Dernière intervention
-
jam-jam68140 Messages postés 18 Date d'inscription Statut Membre Dernière intervention -
jam-jam68140 Messages postés 18 Date d'inscription Statut Membre Dernière intervention -
Bonjour, je souhaite rentrer une formule qui désigne tous les caractere sauf les nombres.
Exemple:
:a
set/p nombre1=
if %nombre1%==( formule ) goto error
:error
echo Veuillez entrer un nombre svp.
pause>nul
:b
...
J'ai d'abord penssé à mettre:
if not %variable1%== "" goto error
malheuresement cette formule marche que avec un if devant! ( et comme je ne connais fas les formules -_-') Si je connai une formule qui désigne l'ensemble des nombres ou alors l'ensemble des caracteres sauf les nombre sa pourrai beaucoup m'aider! merci beaucoup!
Exemple:
:a
set/p nombre1=
if %nombre1%==( formule ) goto error
:error
echo Veuillez entrer un nombre svp.
pause>nul
:b
...
J'ai d'abord penssé à mettre:
if not %variable1%== "" goto error
malheuresement cette formule marche que avec un if devant! ( et comme je ne connais fas les formules -_-') Si je connai une formule qui désigne l'ensemble des nombres ou alors l'ensemble des caracteres sauf les nombre sa pourrai beaucoup m'aider! merci beaucoup!
A voir également:
- Porgrammation batch
- Fichier batch - Guide
- Batch converter - Télécharger - Photo & Graphisme
- Batch renommer une partie du nom de plusieurs fichiers ✓ - Forum Autoit / batch
- Renommer tous les fichiers d'un dossier - Forum Windows
- Color batch - Forum Autoit / batch
19 réponses
Bonjour,
Il n'existe apparemment aucune commande permettant d'identifier un nombre
En tapant help | more , on obtient la liste de toutes les commandes disponibles sur son système
Il n'existe apparemment aucune commande permettant d'identifier un nombre
En tapant help | more , on obtient la liste de toutes les commandes disponibles sur son système
Cependant, il existe des commandes créées par des logiciels évolués. J'en ai moi-même programmé en Turbo C++. La commande Isnumeric et d'autres sont disponibles ici en anglais
http://batchfunctions.blogspot.com/2009/07/batch-file-command-isnumeric.html
http://batchfunctions.blogspot.com/2009/07/batch-file-command-isnumeric.html
merci. Je ne comprend absolument rien mais je vais percévérer! :D si je trouve ce que je demandai je maitrrai la formule! merci quand meme! :)
Euh .ce que vous cherchez est un ensemble de tous les caractères et/ou de tous les nombres. S'agit-il des caractères et des nombres d'un fichier ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
en fait... quand je créer une variable , je voudrai mettre un if : si cette variable n'est pas un nombre -> message d'erreur
en gros c'est sa ce que je voudrai faire!
en gros c'est sa ce que je voudrai faire!
quand je fais sa sa fonctionne pas! tu sais pourquoi?
@echo off
set/p variable1=
if not isnumeric %variable1% goto error
goto ok
:ok
echo c'est bon, la variable est un nombre
pause>nul
:error
echo ce n'est pas bon je t'ai demander d'entrer un nombre!
pause>nul
@echo off
set/p variable1=
if not isnumeric %variable1% goto error
goto ok
:ok
echo c'est bon, la variable est un nombre
pause>nul
:error
echo ce n'est pas bon je t'ai demander d'entrer un nombre!
pause>nul
Avec Windows 7, il y a un problème d'errorlevel (niveau d'erreur) qui n'est généralement pas conservé quand on change de commande.
isnumeric ertt renvoie false (errorlevel 1), mais avec un if avant, ça ne marche pas. J'ai quelques batch qui sont maintenant inutilisables.
Quand on tape isnumeric seul, on a un tip (coup de pouce) qui indique comment capturer un output (sortie) avec la commande for en utilisant token, mais j'avoue que je n'y comprends pas grand chose.
isnumeric ertt renvoie false (errorlevel 1), mais avec un if avant, ça ne marche pas. J'ai quelques batch qui sont maintenant inutilisables.
Quand on tape isnumeric seul, on a un tip (coup de pouce) qui indique comment capturer un output (sortie) avec la commande for en utilisant token, mais j'avoue que je n'y comprends pas grand chose.
Sous XP, on devrait s'en sortir. Je vais scinder la commande en deux
Isnumeric %variable1%
if errorlevel 1 goto error
Isnumeric %variable1%
if errorlevel 1 goto error
] (...) n'est pas reconnu en tant que commande interne ou externe, un programme exécutable ou un fichier de commandes :
Si le message apparaît constamment dans l'invite de commandes, vérifier que le chemin de recherche est correct dans le panneau de configuration dans /système/Avancé/Variables d'environnement/path. Il doit comporter au moins les dossiers Windows et systéme. Autrement, le message peut signifier qu'une commande n'est plus prise en charge par le système d'exploitation,
Si le message apparaît constamment dans l'invite de commandes, vérifier que le chemin de recherche est correct dans le panneau de configuration dans /système/Avancé/Variables d'environnement/path. Il doit comporter au moins les dossiers Windows et systéme. Autrement, le message peut signifier qu'une commande n'est plus prise en charge par le système d'exploitation,
heu... j'ai pas tout sa!!! -_-' mdr mais je suis pas l'administrateur! Et toutes les autre commandes marche (echo, if, goto, random, for, ...) tout marche sauf sa! en tout cas merci quand même de m'aider! c'est sympa! :)
Est-ce que Isnumeric se trouve bien dans le dossier c:\windows\system32 comme les commandes externes xcopy, attrib , etc. Il faudrait tester l'une ou l'autre
heu... l'icone, c'est l'icone du batch sans le rouage nan? si c'est sa ( et meme d'aileur si c'est pas sa, j'ai aucun fichier nommé isnumeric! comment le mettre?
Il faudrait installer le fichier BatchFunctions1.zip en double-cliquant dessus, mais peut-être n'avez-vous pas les droits
nan pas pour installer quelque chose dans le systeme32! mais on peut pa l'installer autre part? ( pas accès non plus au programme files! -_-' )
Hélas non. Le .zip va s'ouvrir sur une interface comportant une commande Install qui doit placer Isnumeric.exe dans c:\windows\system32