IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Scripts/Batch Discussion :

Contrôle nombre de caractères saisis [Batch]


Sujet :

Scripts/Batch

  1. #1
    Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2017
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Transports

    Informations forums :
    Inscription : Octobre 2017
    Messages : 66
    Points : 54
    Points
    54
    Par défaut Contrôle nombre de caractères saisis
    Bonjour,

    J'ai un script avec une variable renseignée par le user j'aimerais y ajouter dans un premier temps un contrôle de saisie sur le nombres de caractères (ici 8 caractères).
    Malgré mes recherches je ne vois pas trop quoi utiliser. j'ai pensé a un if avec EQU mais de ce que j'ai compris ça ne travaille que sur des nombres et pas sur la longueur d'une chaîne.

    Mon code:

    Code Batch : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    :Saisie	
    set /p user="Indiquer user a ajouter au groupe Admin:"
    if /i "%user% EQU (8) goto :AjoutAdmin else goto :Saisie
     
    :AjoutAdmin
    net.exe localgroup "Administrateurs" /Add "Domain\%user%"
    net.exe localgroup "Administrateurs"
    pause

    Sinon je pensais utiliser :

    Code Batch : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    echo %user%|FINDSTR /r ^...........*>nul 
    if ERRORLEVEL 1 goto :Saisie
    If NOT ERRORLEVEL 1 goto :AjoutAdmin

    Mais je ne vois pas quoi mettre à la place des ............. et ne suis pas sûr de ma syntaxe.

    Dans un second temps j'aimerais vérifier en plus de la saisie de 8 caractères, que 7 soit des chiffres et le dernier une lettre.


    Merci d'avance.

  2. #2
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 201
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 201
    Points : 5 795
    Points
    5 795
    Par défaut
    Salut, le . est le caractère qu'il te faut (. Caractère joker = tout caractère)
    Met en autant que tu souhaite qu'il y ai de caractère.
    Code batch : Sélectionner tout - Visualiser dans une fenêtre à part
    echo %user%|FINDSTR /r "^........$">nul&&goto :AjoutAdmin ||goto :Saisie


    Si tu souhaite en plus que le 7eme soit un chiffre et le 8eme une lettre
    Code batch : Sélectionner tout - Visualiser dans une fenêtre à part
    echo %user%|FINDSTR /r /i "^......[0-9][a-Z]$">nul&&goto :AjoutAdmin ||goto :Saisie

  3. #3
    Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2017
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Transports

    Informations forums :
    Inscription : Octobre 2017
    Messages : 66
    Points : 54
    Points
    54
    Par défaut
    j'avais tapé le bon caractère sans le savoir , merci beaucoup ericlm128

  4. #4
    Membre chevronné
    Avatar de I'm_HERE
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 013
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 013
    Points : 1 991
    Points
    1 991
    Par défaut
    Citation Envoyé par riko60 Voir le message
    Bonjour,

    j'ai pensé a un if....
    salem,

    tu peux faire une chose du genre:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if "%user:~6,1%" NEQ "" (if "%user:~7%"=="" (goto :AjoutAdmin) else goto :Saisie) else goto :Saisie
    fais attention avec la commande findstr et le pipe:

    il ne faut pas ajouter d'espaces entre la variable et le symbole | sinon la recherche ne s'aboutira pas avec success


  5. #5
    Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2017
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Transports

    Informations forums :
    Inscription : Octobre 2017
    Messages : 66
    Points : 54
    Points
    54
    Par défaut
    Merci pour ce complément d'information! Vos aides & commentaires me font progresser 2X plus vite.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 11/09/2006, 09h21
  2. un champs pas limité par nbre de caractere
    Par hamadi_insat dans le forum Access
    Réponses: 1
    Dernier message: 10/09/2006, 14h06
  3. probleme controle chaine de caractere
    Par Didier77 dans le forum Access
    Réponses: 18
    Dernier message: 25/07/2006, 14h56
  4. afficher le nombre de caractere saisi
    Par salif98 dans le forum C
    Réponses: 29
    Dernier message: 24/06/2006, 09h32
  5. Réponses: 2
    Dernier message: 23/03/2004, 11h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo