Toplu komut dosyası yalnızca 1 makine için komutu çalıştırmak için


0

Netbıos'u devre dışı bırakmak için bir toplu iş dosyası başlangıç ​​komut dosyası çalıştıran bir Windows GPO var. Normalde şöyle görünür:

wmic nicconfig where (TcpipNetbiosOptions!=null and TcpipNetbiosOptions!=2) call SetTcpipNetbios 2

Ancak, NetBIOS'un etkinleştirilmesi gereken belirli bir bilgisayarım olduğunu öğrendim. Bu makine için tamamen yeni bir GPO yapmak istemedim ve bunun da diğerini geçersiz kılacağından emin değildim, ki bu küreseldir. Sahte kodumu affedersiniz, ancak bu komutun yalnızca bilgisayarın IP'si kesin değilse çalıştırılmasını sağlayacak şekilde nasıl yapabilirim?

IF(<This IP Address> != 192.168.1.1)
wmic nicconfig where (TcpipNetbiosOptions!=null and TcpipNetbiosOptions!=2) call SetTcpipNetbios 2

Yoksa daha iyi bir fikir var mı?


Yanıtlar:


1

Bilgisayarın ana bilgisayar adı IP Adresi yerine yeterli olur mu?

IF %COMPUTERNAME% NEQ NetBIOSPC (wmic nicconfig where (TcpipNetbiosOptions!=null and TcpipNetbiosOptions!=2) call SetTcpipNetbios 2)

Açıkçası, yerine NetBIOSPC sistemin asıl ana bilgisayar adı ile. Yazarak doğru ana bilgisayar adını kullandığınızdan emin olun. hostname veya echo %COMPUTERNAME% Hedef sistemdeki yerel CMD isteminde.


Harika, teşekkürler. Bu işe yarar mı? "% IP%" == "192.168.1.1" DEĞİL ise (wmic nicconfig where (TcpipNetbiosOptions! = Null ve TcpipNetbiosOptions! = 2) SetTcpipNetbios 2'yi arar)
TheFrack

Şahsen kullanmazdım IF NOT x == y nerede IF x NEQ y eşit derecede etkili olurdu, ama bu sadece kişisel tercih meselesi. Kullanmanın tek yolu %IP% koşullu ifadenizdeki bir unsur olarak, eğer bir şekilde sistem IP adresini bu değişkene zaten atadıysanız, bu gibi bir dahili ortam değişkeni değildir. %COMPUTERNAME% olduğunu.
Iszi
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.