2014-10-13 3 views
0

PowerShell의 버전을 확인하는 스크립트를 작성하고 있습니다. 버전 4이면 진행하고, 그렇지 않으면 실행을 중지하십시오. 여기에서 달성하고자하는 것은 폴더에 다섯 개의 스크립트가 있으며 순서대로 실행됩니다. 버전을 확인하는 맨 위에 PowerShell 스크립트를 설치하고 싶습니다.PC에 설치된 PowerShell의 버전을 확인하는 방법

$psversion= $psversiontable 
if($psversion -eq 4.0) 
{ 
    ./01. Run All Script.ps1 
} 

"실행되는 모든 스크립트는"순서로 스크립트의 나머지 부분을 실행, 그래서 당신은 돈 02. check_psversion.ps1

requires -version 4 
write-host "this is your version" 
+0

'requires' **해야합니다 ** 앞에 반드시 해쉬 마크 ('#')가 있어야합니다. – alroc

답변

4

로 PowerShell을에게 스크립트를주고 싶습니다 ': 여기

내 코드입니다 어떤 if 시험을 쓸 필요가 없습니다; 모든 스크립트에서 requires 지시문을 사용하십시오 (각 스크립트에서 명시 적으로 실행 순서를 가정하거나 의존하지 마십시오). 이전 버전 3에서 스크립트를 실행하거나하려고하면

#requires -version 4 

, 그것은 때문에 requires 지시어 중지됩니다.

편집 : Powershell 버전 번호를 얻으려면 더 미세한 해상도 (정확한 빌드 번호)가 필요하지 않는 한 $psversiontable.psversion.major을 사용하십시오.

+0

나는 두 줄의 -version 5와 write 호스트 행을 필요로하는 더미 스크립트를 만들었지 만이 오류가 필요합니다 require는 cmdlet의 이름으로 인식되지 않습니다 – srk786

+0

'# '으로'requires'접두사를 사용 했습니까? 필자가 제공 한 링크 (및 코드)의 예제에서 볼 수 있듯이 그렇게해야합니다. – alroc

+0

실행 감사,하지만 난 이해가 # 코멘트에 대한 명령이나 지시문으로 실행 올게 – srk786

관련 문제