Comment puis-je vérifier si une variable contient une autre variable à l'intérieur d'un fichier de commandes windows?
En supposant que le fichier de commandes suivant
set variable1=this is variable1
set variable2=is
set variable3=test
if variable1 contains variable2 (
echo YES
) else (
echo NO
)
if variable1 contains variable3 (
echo YES
) else (
echo NO
)
Je veux que la sortie soit un OUI, suivie par un PAS de
OriginalL'auteur Gary Brunton | 2013-07-11
Vous devez vous connecter pour publier un commentaire.
J'ai résolu ce problème avec le suivant
J'ai eu l'idée de base de la réponse suivante, mais ce n'était pas la recherche par une variable de sorte qu'il n'était pas tout à fait ce que je cherchais.
Fichier de commandes: Trouver si la sous-chaîne est en chaîne (pas dans un dossier)
OriginalL'auteur Gary Brunton
d'une autre manière:
la
/
empêche la sortie deEcho is ON
ouEcho is OFF
en cas%variable1%
est vide./?
, variable1=on
, et variable1=off
. Envisagerecho foobar %variable1%|find "%variable2%" >nul
, qui échoue pour variable2=foobar.OriginalL'auteur Stephan
Gary Brunton la réponse n'a pas de travail pour moi.
Si vous essayez avec
set variable1="C:\Users\My Name\"
, vous allez vous retrouver avec une erreur :De l'adaptation de cette réponse Savoir si une variable d'environnement contient une sous-chaîne, j'ai fini avec :
OriginalL'auteur JBE