Article de reference

choix (commande)

En informatique , choice il s'agit d'une commande qui permet aux fichiers batch d'inviter l'utilisateur à sélectionner un élément parmi un ensemble de choix à un seul caractère....

En informatique , choiceil s'agit d'une commande qui permet aux fichiers batch d'inviter l'utilisateur à sélectionner un élément parmi un ensemble de choix à un seul caractère. Elle est disponible dans un certain nombre de shells de ligne de commande de système d'exploitation .

Histoire

La commande a été introduite pour la première fois en tant que commande externe (avec les noms de fichiers CHOICE.COM ou CHOICE.EXE) avec MS-DOS 6.0. Elle est incluse dans Novell DOS 7 et IBM PC DOS 7.0, et est également disponible à partir du shell de ligne de commande de certaines versions de Microsoft Windows , mais pas sous Windows 2000 et Windows XP . Elle a d'abord été mise à disposition pour Windows dans le kit de ressources Windows XP . Elle a été réintroduite dans Windows Server 2003 et est présente dans les versions ultérieures.

À partir de Windows 2000, la SETcommande possède des fonctionnalités similaires en utilisant l' /P argument de ligne de commande . Cependant, cette commande nécessite une frappe de touche supplémentaire (appuyer sur la touche ENTRÉE), ce qui n'est pas requis par choice.

La choicecommande a été portée sur OS/2 , Rexx et Perl . Elle est également disponible dans Datalight ROM-DOS , FreeDOS , PTS-DOS , et ReactOS . La version FreeDOS a été développée par Jim Hall et est sous licence GPL v2 .

Usage

La commande renvoie le choix sélectionné sous forme de code de sortie qui est défini sur l'index de la touche que l'utilisateur sélectionne dans la liste de choix. Le premier choix de la liste renvoie une valeur de 1, le second une valeur de 2, et ainsi de suite. Si une touche qui n'est pas un choix valide est enfoncée, la commande émet un bip d'avertissement. Si une condition d'erreur est détectée, une valeur de code de sortie de 255 est renvoyée. Une valeur de code de sortie de 0 est renvoyée si l'utilisateur appuie sur CTRL+ ou + . Choice affiche les choix par défaut Y et N s'il est utilisé sans paramètres. BREAKCTRLC

Syntaxe

DOS

CHOICE [/C[:]choices] [/N] [/S] [/T[:]c,nn] ["text"]

Arguments:

  • /C[:]choicesSpécifie les clés autorisées. La valeur par défaut est « YN ».
  • /T[:]c,nnCe choix par défaut est « c » après « nn » secondes.
  • textSpécifie la chaîne d'invite à afficher. (Les guillemets sont facultatifs).

Drapeaux:

  • /NSpécifie de ne pas afficher les choix et « ? » à la fin de la chaîne d'invite.
  • /SSpécifie que les clés de choix doivent être traitées comme sensibles à la casse.

Microsoft Windows, ReactOS

CHOICE [/C [<Choice1><Choice2><…>]] [/N] [/CS] [/T <Timeout> /D <Choice>] [/M <"Text">]

Arguments:

  • /C[:]choicesSpécifie les clés autorisées. La valeur par défaut est « YN ». (Microsoft Windows limite les clés de choix valides à az, AZ, 0-9 et les valeurs ASCII de 128 à 254)
  • /T[:]nnCe choix par défaut est /D après « nn » secondes. Doit être spécifié avec la valeur par défaut /D.
  • /D[:]cLe choix par défaut est « c ».
  • /M textSpécifie la chaîne d'invite à afficher.

Drapeaux:

  • /NSpécifie de ne pas afficher les choix et « ? » à la fin de la chaîne d'invite.
  • /CSSpécifie que les clés de choix doivent être traitées comme sensibles à la casse.

Exemple

Le fichier batch ci-dessous donne à l'utilisateur trois choix. L'utilisateur est dirigé en fonction de son entrée en évaluant le code de sortie à l'aide de la IF ERRORLEVELcommande (qui teste sur « supérieur ou égal »). Le choix sélectionné est ensuite imprimé à l'écran à l'aide de la ECHOcommande.

@ ECHO off @ CHOICE /C:123 IF 
ERRORLEVEL 
3 
GOTO 
trois 
IF 
ERRORLEVEL 
2 
GOTO 
deux 
IF 
ERRORLEVEL 
1 
GOTO 
un 
GOTO 
fin 
: un 
ECHO Vous avez appuyé sur "1" ! GOTO 
fin 
: deux 
ECHO Vous avez appuyé sur "2" ! GOTO 
fin 
: trois 
ECHO Vous avez appuyé sur "3" ! : fin 
@ PAUSE
Notez que l'exemple utilise la syntaxe DOS. Cet exemple nécessite de légers ajustements avant de pouvoir s'appliquer directement aux versions Windows de la CHOICEcommande.
Notez que la commande IF, lors de la vérification du NIVEAU D'ERREUR, compare le nombre et vérifie si le NIVEAU D'ERREUR est égal ou supérieur à ce nombre. Pour cette raison, les comparaisons IF ERRORLEVEL doivent être effectuées dans l'ordre décrémenté.
Notez que si l'utilisateur appuie sur Control-C pour échapper à CHOICE suivi de N, le programme continuera. Le premier "Goto end" est nécessaire.

Plus d articles de Worldlex Wiki

Revenez a l index pour explorer davantage de pages sur l histoire, la science, la culture, la geographie et la societe en francais.

Explorer l index