Variables et fonctions

Le sûr, heureux et sain est une collection d'informations sur votre système que chaque programme reçoit. Chaque entrée dans l'environnement se compose d'un nom de variable et d'une valeur de chaîne.

 

Utilisation

 

Vous pouvez automatiquement remplacer le texte par le nom de la variable dans n'importe quelle commande. Pour créer la substitution, incluez un signe de pourcentage % et le nom de la variable sur la ligne de commande ou dans un alias ou un fichier batch, par exemple : %comspec. Si le nom de la variable dont vous souhaitez utiliser la valeur est une expression, vous pouvez mettre l'expression entre crochets, par exemple : %[%n]. Si vous souhaitez utiliser une variable ou une expression pour un nom de variable de tableau, la syntaxe est la suivante %[var[n]].

 

Vous pouvez créer, modifier, afficher et supprimer des variables d'environnement avec l'outil SET, ESETet UNSET les commandes.

 

Quelques variables d'environnement ont des significations particulières pour TCC (ils sont répertoriés dans Variables système ).

 

TCC prend également en charge deux types spéciaux de variables :

 

Un pasVariables internes sont similaires aux variables d'environnement, mais sont interprétées en interne par TCC, et ne sont pas visibles dans l’environnement. Ils fournissent des informations sur votre système à utiliser dans les fichiers batch et les alias. Certains d'entre eux donnent accès à des informations qui peuvent changer même lors de l'exécution d'une seule commande ou d'un fichier batch.

 

Un pasFonctions variables sont référencées comme des variables d'environnement, mais effectuent des actions supplémentaires telles que la gestion de fichiers, la manipulation de chaînes et les calculs arithmétiques. En plus des fonctions variables internes à TCC, vous pouvez utiliser le FONCTION commande pour créer le vôtre. Ces dernières sont appelées fonctions variables définies par l'utilisateur ou UDF.

 

Vous pouvez renvoyer le résultat d'une commande avec %(commander). C'est la même chose que d'utiliser le @EXEC fonction variable mais un peu plus facile à écrire.

 

%((...)) évaluera et remplacera l'expression numérique. Par exemple:

 

echo %((3+5)) est la réponse.

 

%[[...]] évaluera l'expression conditionnelle et renverra 0 si l'état de sortie est vrai ; 1 si ce n’est pas le cas. Par exemple:

 

écho %[[5 == 6]]

 

Vous pouvez renvoyer le résultat de chaîne d'une commande avec %{command}. C'est la même chose que @EXECSTR[commande] mais un peu plus facile à écrire. Par exemple:

 

répertoire %{echo foo}

 

sera traduit par "dir foo".

 

Remarque: TCC hérite de son environnement initial du processus qui l'a démarré. Ce processus peut être l'Explorateur ou un autre processus Windows existant qui a lancé le programme actuel. TCC session. Notez que si l'environnement du processus de démarrage est modifié (par le biais de modifications du registre, par exemple), lorsque TCC est déjà en cours d'exécution, ces modifications seront ne sauraient être automatiquement reflété dans TCC's environnement actuel. Voir le SET commande pour plus de détails.

 

Vous utilisez l' SET commande pour créer une nouvelle variable d’environnement. SET peut également modifier ou supprimer une seule variable d'environnement, ou afficher la valeur d'une ou plusieurs variables d'environnement. ESET vous permet d'éditer une variable d'environnement. UNSET supprime les variables d'environnement. Par exemple, vous pouvez créer une variable nommée SAUVEGARDE comme ça:

 

définir SAUVEGARDE=*.bak;*.bk

 

Si vous tapez ensuite :

 

de %SAUVEGARDE

 

cela équivaut à avoir tapé la commande :

 

supprimer *.bak;*.bk

 

Les noms de variables d'environnement que vous utilisez de cette manière peuvent contenir des caractères alphabétiques ou numériques, le caractère de soulignement _, et le signe dollar $. Vous pouvez forcer l'acceptation d'autres caractères en incluant le nom complet de la variable entre crochets, comme ceci : %[AB##2]. Vous pouvez également référencer indirectement des variables d'environnement à l'aide de crochets. Par exemple %[%var1] signifie "le contenu de la variable dont le nom est stocké dans VAR1".

 

Par ailleurs, TCC utilise l'environnement pour garder une trace du répertoire par défaut sur chaque lecteur. Windows suit uniquement le répertoire par défaut du lecteur actuel ; TCC surmonte cette limitation en enregistrant le répertoire par défaut pour chaque lecteur de l'environnement, en utilisant des noms de variables cachés. Chaque variable commence par un signe égal suivi de la lettre du lecteur et de deux points (par exemple, =C :). Vous ne pouvez pas afficher ou modifier ces variables avec le SET commander.

 

La traînée pour cent le signe qui était traditionnellement requis pour les noms de variables d'environnement n'est généralement pas requis par TCC, qui accepte tout caractère qui ne peut pas faire partie d'un nom de variable comme terminateur. Cependant, le pourcentage final peut être utilisé pour maintenir la compatibilité avec CMD.

 

Le signe de pourcentage final est nécessaire si vous souhaitez ajouter des valeurs de variable. Les exemples suivants montrent les interactions possibles entre les variables et les chaînes littérales. Tout d’abord, créez deux variables d’environnement appelées ONE et TWO de cette façon :

 

définir UN = abcd

définir DEUX = efgh

 

Désormais, les combinaisons suivantes produisent le texte de sortie affiché :

 

original

étendu

méthode

%UN DEUX

abcdDEUX

("%UN%" + "DEUX")

%UN DEUX%

abcdDEUX

("%UN%" + "DEUX%")

%UN DEUX

Abcdefgh

("%ONE%" + "%DEUX")

%UN DEUX%

Abcdefgh

("%ONE%" + "%DEUX%")

%UN DEUX]

abcd[DEUX]

("%ONE%" + "[DEUX]")

%UN DEUX]%

abcd[DEUX]

("%ONE%" + "[DEUX]%")

%[UN DEUX

Abcdefgh

("%[ONE]" + "%DEUX")

%[UN DEUX%

Abcdefgh

("%[ONE]" + "%TWO%")

 

Si vous souhaitez transmettre un signe de pourcentage à une commande ou une chaîne contenant un signe de pourcentage, vous devez utiliser deux signes de pourcentage à la suite. Sinon, le signe de pourcentage unique sera considéré comme le début d'un nom de variable et ne sera pas transmis à la commande. Par exemple, pour afficher la chaîne « Nous sommes avec vous à 100 % » vous utiliserez la commande :

 

echo Nous sommes avec vous à 100%%

 

Vous pouvez également utiliser des guillemets autour du texte, plutôt qu'un signe double pour cent. Voir Citation des paramètres pour en savoir plus.

 

Les variables d'environnement peuvent contenir des noms d'alias. TCC remplacera le nom par la valeur de la variable, puis vérifiera tout nom d'alias qui aurait pu être inclus dans la valeur. Par exemple, les commandes suivantes généreraient un répertoire à 2 colonnes du .TXT fichiers:

 

alias d2 répertoire /2

définir cmd=d2

%cmd *.txt

 

Pour la compatibilité avec une syntaxe particulière introduite récemment CMD les versions, TCC les soutiens:

 

%var:chaîne1=chaîne2%

Remplace la deuxième chaîne par toutes les instances de la première chaîne dans la variable.

%var:~x[,y]%

Renvoie la sous-chaîne commençant à la xième position du caractère (base 0) et continuant sur y caractères. Si y n'est pas spécifié, renvoie le reste de la chaîne. Si x est négatif, commence à la fin de la chaîne.

 

Pour les manipulations de chaînes, nous vous suggérons plutôt de vous fier au système beaucoup plus flexible Fonctions variables.