Lot de Fichier pour récupérer les Locaux de la Zone Nom de Connexion dans Windows XP
Je suis en train d'écrire un simple script de commandes pour configurer le DNS d'un réseau local, connexion automatiquement. Voici le script:
REM Set DNS
netsh interface ip set dns name="Local Area Connection" static X.X.X.X
netsh interface ip add dns name="Local Area Connection" Y.Y.Y.Y index=2
netsh interface ip add dns name="Local Area Connection" Z.Z.Z.Z index=3
Mais la chose est, si la Zone de nom de Réseau n'est pas par défaut (c'est à dire la Connexion au réseau Local), le script ne fonctionnera pas.
Est-il de toute façon j'ai peut détecter tous les Locaux de la Zone de Connexion de noms et de définir toutes ces connexions LAN DNS à l'aide du fichier de commandes?
Toute aide sera appréciée 🙂
OriginalL'auteur user1055010 | 2012-03-22
Vous devez vous connecter pour publier un commentaire.
J'ai testé ce code dans Windows 7. Vous devrez peut-être apporter quelques modifications pour Windows XP.
Je vais prendre note que j'ai toujours utiliser
Call
états plutôt que entre crochets script. Trop souvent, les gens deviennent confus quand les variables d'environnement ne se comportent pas comme prévu entre parenthèses script. - Je trouver de l'appel d'une étiquette rend script plus facile de travailler avec.EDIT: Explination.
La
For
commande lit chaque ligne d'un fichier de commande ou de résultat.In ('command')
lui dit de lire chaque ligne du résultat decommand
.skip=2
saute la première deux lignes de sortie, dans ce cas, l'en-tête de colonne.tokens=4*
dit de lire la quatrième chose sur chaque ligne comme une variable (4
), et tout ce qui suit comme une autre variable (*
).%%a
dit de conserver au-dessus de jetons dans%%a
et%%b
respectivement.Do (commands)
exécute lacommands
pour chaque ligne.Ma sortie de
NetSh Interface IPv4 Show Interface
est:J'ai donc pris le quatrième jeton (l'État) et tous les jetons après que (le Nom) et de les transmettre à une fonction de script d'appel. Ici, ils sont récupérées en tant que paramètres de ligne de commande, à savoir
%1
et%2
.Notez que chaque Nom se compose de deux ou trois jetons en raison de la présence d'espaces, par conséquent, avec
*
au lieu de5
.Malheureusement, je ne peux pas obtenir tout XP ici pour lancer
NetSh Interface IP Show Interface
. Voir ma réponse pour une explination du script.merci beaucoup..j'ai eu l'idée et je vais essayer de l'adapter pour windows xp 🙂
Pour XP ajuster à la Main E-code Alimentaire: vous devez taper la commande "netsh interface ip" au lieu de "netsh interface ipv4 ...". Un autre problème est le même si le code s'exécute sans erreur sous XP, il n'affiche pas toute connexion à l'interface de l'information. Cela pourrait avoir à faire avec le service d'accès à distance.
Grande réponse merci
OriginalL'auteur Hand-E-Food
Windows XP 1ère ligne de sortie de commande "netsh int ip show config' est:
OriginalL'auteur user3054245