powershell 버전을 확인하려고하고 있는데 어떤 버전을 기반으로했는지에 따라 다른 버전 간의 명령 및 구문 차이로 인해 특정 기능을 실행해야합니다. 쉽게 비교할 수 있도록 버전 번호 만있는 변수를 만들려고합니다. 여기에 코드가 있습니다.powershell 버전을 확인하고 버전을 기반으로 함수를 실행하십시오.
$PSversion = {$PSVersionTable.PSVersion | sort-object major | ForEach-Object {$_.major}}
Switch ($PSversion) {
2 {V2}
4 {V4}
5 {V5}
}
function V2 {
"You have Powershell Version 2"
}
function V4 {
"You have Powershell Version 4"
}
function V5 {
"You have Powershell Version 5"
}
변수의 내용을 출력 할 때 빈 줄을 반환 할 때 번호와 줄 바꿈이 생깁니다. 나는 바꾸기를 사용하여 새 줄을 없애려고했지만 항상 그곳에 있습니다. 변수 명령을 powershell 창에 직접 입력 한 다음 변수의 내용을 인쇄하면 새 행이 아닌 버전 번호 만 표시됩니다. 같은 파워 쉘 창에서 스크립트를 실행하면 아무 것도 얻지 못합니다.
이에 어떤 도움을 주시면 감사하겠습니다! 이 방법을 사용할 필요가 없습니다. PowerShell 버전을 확인하고 버전을 기반으로 함수를 실행하는 방법은 제가 찾고있는 전부입니다.
또한 숙박 –
을 정의 된 개선 :'Switch ($ PSVersionTable.PSVersion.Major)' – TheIncorrigible1
이 접근에 대한 일반적인 코멘트 : 내기가있다. 특정 속성, 기능 또는 무엇이든지 버전을 기반으로 추정하는 것보다 더 큰지 확인하십시오. 또한 ['# Requires'] (https://docs.microsoft.com/powershell/module/microsoft.powershell.core/about/about_requires?view=powershell-5.1) 지시문을 살펴 보도록 권합니다. – iRon