2017-12-13 1 views
-2

Netsh 일부 변수를 전달하려고하고 있으며이를 수락하지 않습니다. 사전 설정 변수를 사용하여 IP 주소, 서브넷, DNS 등을 설정하기 위해 PowerShell 스크립트에서 Netsh를 호출하는 방법에 대해 조언 할 수 있습니까?Powershell 변수가 Netsh에서 허용하지 않습니다.

환경 : Windows 2008 r2 (PS 4 포함) - NetAdapter 모듈을 사용할 수 없습니다. 나는

이 작동하지 않습니다 Netsh를 사용해야합니다

$DNSServer = 10.10.10.1 
netsh interface ip set dns name="Local Area Connection" static $DNSServer 

이 수행 업무 :

netsh interface ip set dns name="Local Area Connection" static 10.10.10.1 

나는이 정말 ....

$IP = 10.10.10.3 
$SubNet = 255.255.255.0 
$GateWay = 10.10.10.100 

netsh interface ip set address name="Local Area Connection" static $IP $SubNet $GateWay 

많은 작업을 수행 할 감사!

+0

구체적으로 말하지 않았기 때문에 개선이 필요합니다. 작동하지 않았습니다. Vincent K가 그의 대답에서 지적한 바와 같이, 변수에 변수를 할당 할 때 문자열의 값을 인용해야합니다. –

답변

2

IP 주소 주위에 따옴표를 넣으십시오.

$DNSServer = '10.10.10.1' 
netsh interface ip set dns name="Local Area Connection" static $DNSServer 
+0

PS에서 따옴표 사용에 대한 OP 읽기를 권하고 싶습니다. [understanding-quotation-marks-in-powershell]에 대한 좋은 heyscriptingguy 문서가 있습니다 (https://blogs.technet.microsoft.com/heyscriptingguy/2015)./06/20/weekend-scripter-understanding-quoters-marks-in-powershell /) –

+0

** ** 대단히 감사합니다. ** 시도했지만 생각하지 않았습니다. 귀하의 버전은 완벽한 감사했습니다! – blop001

관련 문제