Objet :Obtenir une chaîne de caractères du clavier et la sauvegarder dans une variable d'environnement ou un tableau.

 

Format :INPUT [/= /C /D /E["default"] /K"keys" /Lmax[:min] /N /P /T /Wn /X] [prompt ] %%varname

 

promptTexte optionnel affiché en tant qu'invite.
varnameLa variable qui contiendra l'entrée de l'utilisateur.

 

/C(lear buffer) /N(o colors)
/D(igits uniquement) /P(assword)
/E(dit) /T(compte à rebours)
/K(eys) /W(ait)
/L(ength) /X(pas de retour chariot)

 

Voir aussi : SET, INKEY, KEYSTACK, MSGBOX et QUERYBOX.

 

Utilisation :

 

INPUT affiche éventuellement une invite, puis attend votre entrée et la stocke dans une  variable d'environnement ou de tableau. INPUT est normalement utilisé dans les fichiers batch et les alias pour obtenir une entrée de plusieurs caractères (pour une entrée par touche unique, voir INKEY).

 

INPUT fonctionne dans la fenêtre de la ligne de commande. Si vous préférez utiliser une boîte de dialogue pour la saisie des données par l'utilisateur, consultez les  commandes MSGBOX et QUERYBOX.

 

Si  un texte d'invite est inclus dans une commande INPUT, il est affiché pendant que INPUT attend la saisie. Les touches d'édition standard de la ligne de commande peuvent être utilisées pour modifier la chaîne d'entrée au fur et à mesure qu'elle est saisie. Si vous utilisez l' option de mot de passe/P, INPUT affichera des astérisques à la place des touches que vous tapez.

 

INPUT revient en arrière lorsque vous appuyez sur le retour chariot. Tous les caractères saisis jusqu'au retour chariot, mais non compris, sont stockés dans la variable.

 

Le fragment de fichier batch suivant demande une chaîne de caractères et la stocke dans la variable FNAME :

 

input Enter the file name: %%fname

 

INPUT lit l'entrée standard et accepte donc le texte provenant d'un fichier redirigé ou de la PISTE CLÉ.

 

INPUT supporte les expressions régulières pour le masque (/K "xxx"). Vous devez préfixer l'expression régulière par : : - par exemple :

 

input /k"::^[0-9]$" Enter a number: %%number

 

Numeric input may be entered in either decimal format (a sequence of 0-9 digits) or in hexadecimal format ("0x" followed by a sequence of 0-F hex digits).

 

Si vous appuyez sur Ctrl-C ou Ctrl-Break pendant que INPUT attend une entrée, l'exécution d'un alias sera interrompue et l'exécution d'un fichier batch sera suspendue pendant que l'on vous demandera si vous voulez annuler le travail batch. Un fichier batch peut gérer lui-même Ctrl-C et Ctrl-Break avec la  commande ON BREAK.

 

Vous pouvez envoyer du texte à INPUT, mais cela définira la variable dans le processus "enfant" utilisé pour gérer le côté droit du tuyau. Cette variable ne sera pas disponible dans la copie originale de TCC utilisée pour démarrer le pipe.

 

Si vous n'entrez aucun argument, INPUT affichera sa boîte de dialogue de commande.

 

Options :

 

/=Affiche la boîte de dialogue de commande INPUT pour vous aider à définir les options de la ligne de commande. L'option /= peut être placée n'importe où sur la ligne ; les options supplémentaires définiront les champs appropriés dans la boîte de dialogue de commande.

 

/CRejeter toutes les frappes en attente dans la mémoire tampon du clavier avant que INPUT ne commence à accepter des caractères.

 

/DN'accepte que les chiffres de 0 à 9.

 

/EPermet de modifier une valeur existante. S'il n'y a pas de valeur existante pour varname, INPUT procède comme si /E n'avait pas été utilisé, et vous permet d'entrer une nouvelle valeur . S'il n'y a pas de valeur existante et que vous fournissez une valeurpar défaut facultative , INPUT affichera la valeur par défaut à éditer.

 

/K "keys"Indique les touches autorisées. La liste des touches valides doit être placée entre guillemets. Pour les touches alphabétiques, le test de validité n'est pas sensible à la casse.

 

Par exemple, pour les touches alphabétiques, le test de validité n'est pas sensible à la casse :

 

input /k"[0-9]-()" Enter your phone number: %%var

 

Vouspouvez spécifier des touches étendues en plaçant leur nom entre crochets (entre guillemets). Voir Touches et noms de touches pour une liste complète des noms de touches que vous pouvez utiliser entre crochets et une description du format des noms de touches.

 

Si une touche non valide est saisie, le système émet un bip et attend une autre touche, TCC émet un signal sonore et attend une autre frappe.

 

/Lmax[:min] Fixe le nombre maximal de caractères acceptés par INPUT à max. Si vous tentez de saisir plus que ce nombre de caractères, INPUT émettra un signal sonore et empêchera toute nouvelle saisie (vous pourrez toujours modifier les caractères saisis avant que la limite ne soit atteinte). Le paramètre optionnel min définit le nombre minimum de caractères acceptés par INPUT.

 

/NDésactive l'utilisation des couleurs d'entrée définies dans les options de configuration Couleurs et force INPUT à utiliser les couleurs d'affichage par défaut.

 

/PIndique à INPUT d'afficher des astérisques à la place des caractères que vous tapez.

 

/TAffiche un compte à rebours (/Wn est également nécessaire).

 

/WDélai d'attente, en secondes, pour une réponse. Si aucune touche n'est saisie à la fin de la période d'attente, INPUT revient avec la variable inchangée. Cela vous permet de poursuivre le fichier batch si l'utilisateur ne répond pas dans un délai donné. Si vous entrez une touche avant la fin du délai d'attente, INPUT attendra indéfiniment le reste de la ligne. Vous pouvez spécifier /W0 pour revenir immédiatement si aucune touche n'est en attente dans la mémoire tampon du clavier.

 

/XEmpêche INPUT d'ajouter un retour chariot et un saut de ligne après la saisie de l'utilisateur .