Основываясь на моем первоначальном комментарии, замена умных кавычек на бессмысленные кавычки и определение типа переменной :
$IPDNS1 = [IPAddress] "192.168.10.10"
$DGMAINOFFICE = [IPAddress] "192.168.10.254"
New-NetIPAddress –InterfaceAlias "ethernet" -IPAddress $IPDNS1 –PrefixLength 24 -DefaultGateway $DGMAINOFFICE
Вы заявили, что это не сработало, поэтому давайте попробуем определить почему!
Откройте приглашение PowerShell и посмотрите справочную информацию для команды Get-Help New-NetIPAddress
, вы должны увидеть типы данных, которые ваша команда ожидает получить. [-IPAddress] <String>
и [-DefaultGateway <String>]
. Итак, давайте посмотрим, для какого типа он был определен. Введите и введите следующее $IPDNS1 = [IPAddress] "192.168.10.10"
, а затем выполните следующую команду $IPDNS1.GetType().Name
. Вы должны увидеть, что определенный тип - IPAddress
, а не String
, поэтому давайте попробуем исправить это:
Введите и введите следующий $IPDNS1 = [String] "192.168.10.10"
, а затем выполните следующую команду $IPDNS1.GetType().Name
. Вы должны увидеть, что определенный тип правильно определен как String
. так что давайте попробуем это по-настоящему:
$IPDNS1 = [String] "192.168.10.10"
$DGMAINOFFICE = [String] "192.168.10.254"
New-NetIPAddress –InterfaceAlias "ethernet" -IPAddress $IPDNS1 –PrefixLength 24 -DefaultGateway $DGMAINOFFICE
Однако следует отметить, что стандартный / стандартный способ определения переменной как строкового типа - это просто двойные кавычки, (не умные кавычки) , как я также упоминал в разделе комментариев:
Чтобы проверить это, введите $IPDNS1 = "192.168.10.10"
в приглашении, а затем $IPDNS1.GetType().Name
, вы должны увидеть, что тип - String
, поэтому давайте посмотрим, что переведено по вашей команде:
$IPDNS1 = "192.168.10.10"
$DGMAINOFFICE = "192.168.10.254"
New-NetIPAddress –InterfaceAlias "ethernet" -IPAddress $IPDNS1 –PrefixLength 24 -DefaultGateway $DGMAINOFFICE