J'écris un script batch pour installer un logiciel dépendant de 32 ou 64 bits. J'utilise "wmic os get osarchitecture" pour déterminer l'architecture du système d'exploitation Windows.
Ce que je cherche à faire est d’avoir la sortie WMIC dans un fichier texte nommé qui est basé sur la sortie. Par exemple, si le résultat est un système d'exploitation 32 bits, il créera un fichier texte appelé 32bit.txt ou, s'il s'agit d'un système d'exploitation 64 bits, il créera un fichier texte appelé 64 bits.txt.
De cette façon, mon script de commandes peut exécuter le programme d'installation 32 bits si 32bit.txt existe ou exécuter le programme d'installation 64 bits si 64 bits.txt existe.
windows-7
windows
script
batch-file
Dgagne
la source
la source
32bit
ou64bit
?IF "%PROCESSOR_ARCHITECTURE%"=="x86" (apple32) else (apple64)
.Réponses:
La
PROCESSOR_ARCHITECTURE
variable d'environnement peut vous donner quelque chose de similaire à ce que vous voulez. Il contiendrax86
,AMD64
,ARM64
ouIA64
que vous pouvez ajouter à votre nom de fichier.Par exemple:
Vous pouvez également l'utiliser directement dans votre script de traitement par lots pour appeler les installateurs. Par exemple, j'ai généralement la structure de fichier suivante pour les installations par lots:
Le fichier de commandes contiendra alors quelque chose comme:
Si vous préférez utiliser WMIC, vous pouvez le faire sans utiliser de fichier:
bit
contiendrait alors32bit
ou64bit
.la source
x64
c'est une valeur valide / attendue pour%PROCESSOR_ARCHITECTURE%
? Sur mon Dell Inspiron basé sur Intel i5 (sous Windows 7 64 bits), c'estAMD64
x86
,AMD64
,ARM64
ouIA64
. Le code de lot définit sa propre variable avecx64
pour réduire le nombre de valeurs.