![Пакетный скрипт для запуска команды только для 1 машины](https://rvso.com/image/1414677/%D0%9F%D0%B0%D0%BA%D0%B5%D1%82%D0%BD%D1%8B%D0%B9%20%D1%81%D0%BA%D1%80%D0%B8%D0%BF%D1%82%20%D0%B4%D0%BB%D1%8F%20%D0%B7%D0%B0%D0%BF%D1%83%D1%81%D0%BA%D0%B0%20%D0%BA%D0%BE%D0%BC%D0%B0%D0%BD%D0%B4%D1%8B%20%D1%82%D0%BE%D0%BB%D1%8C%D0%BA%D0%BE%20%D0%B4%D0%BB%D1%8F%201%20%D0%BC%D0%B0%D1%88%D0%B8%D0%BD%D1%8B.png)
У меня есть Windows GPO, который запускает скрипт запуска пакетного файла для отключения NetBIOS. Обычно он выглядит так:
wmic nicconfig where (TcpipNetbiosOptions!=null and TcpipNetbiosOptions!=2) call SetTcpipNetbios 2
Однако я только что узнал, что у меня есть один конкретный компьютер, которому нужно включить NetBIOS. Я не хотел создавать совершенно новый GPO для этой машины, и я также не был уверен, переопределит ли он другой, который является глобальным. Извините за мой псевдокод, но как мне сделать так, чтобы эта команда выполнялась только в том случае, если IP компьютера не является определенным?
IF(<This IP Address> != 192.168.1.1)
wmic nicconfig where (TcpipNetbiosOptions!=null and TcpipNetbiosOptions!=2) call SetTcpipNetbios 2
Или есть идея получше?
решение1
Будет ли достаточно имени хоста компьютера вместо IP-адреса?
IF %COMPUTERNAME% NEQ NetBIOSPC (wmic nicconfig where (TcpipNetbiosOptions!=null and TcpipNetbiosOptions!=2) call SetTcpipNetbios 2)
Очевидно, замените NetBIOSPC
на фактическое имя хоста системы. Убедитесь, что вы используете правильное имя хоста, введя hostname
или echo %COMPUTERNAME%
в локальной командной строке CMD на целевой системе.