매번 입력하는 시간을 절약하기 위해 몇 가지 명령을 실행하는 매우 간단한 .bat 파일을 설정했지만 프로세스는 powershell 7에서 실행되어야합니다.
수동으로 powershell 7.0.3을 실행 한 다음 명령을 실행하면 모든 것이 작동하지만 .bat 스크립트가 시작됩니다.
powershell -Version 7.0.3 -Command {XXXXX};
"Windows PowerShell 버전 7.0.3이 설치되어 있지 않기 때문에 시작할 수 없습니다."라는 메시지가 표시됩니다.
버전 번호없이 시도하고 실행하면 5.1.x에서 실행되고 6+가 필요하므로 실패합니다.
tl; dr
으로 Lee_Dailey의 주의 사항을 수행해야 사용pwsh.exe
하지 powershell.exe
, 버전 시작 PowerShell을 [코어] V6 + 당신이 호출해야 원하는 버전의 특정 실행 파일을 .
가장 간단한 경우 :
pwsh -Command "XXXXX"
PowerShell 외부 에서 스크립트 블록 ( )을 직접 실행할 수 없기 때문에 로 대체 {XXXXX}
했습니다 . 명령을 문자열 로 제공하기 만하면됩니다 ."XXXXX"
{...}
Windows PowerShell과 달리 여러 PowerShell [Core] 버전을 나란히 설치할 수 있습니다 .
실행 pwsh -version
(sic, 아래 참조)을 실행 하여 시스템 경로 ( PATH
환경 변수에 나열된 디렉토리 중 첫 번째로 나오는 인스턴스)의 버전을보고합니다 $env:PATH
.
대상으로 지정하려는 것이 아닌 경우 전체 경로 를 통해 호출해야 합니다 .
표준 설치 위치 를 사용하려는 경우 버전 7.0 용 Windows에서 다음을 사용할 수 있습니다."C:\Program Files\PowerShell\7\pwsh.exe"
대상 버전의 실행 가능 위치를 안정적으로 확인하려면 해당 버전에 대한 대화 형 콘솔을 열고 "$PSHOME\pwsh.exe"
.
-Version
의 매개 변수powershell.exe
는 Windows PowerShell을 CLI는 않습니다 하지 그냥 시작할 수 있는 PowerShell을 버전 , 단지 이전 버전의 Windows PowerShell을 :
-Version 2
, 이전에 필요한 레거시 버전의 .NET Framework를 설치 한 경우에만 성공합니다.-Version 1
그리고 -Version 2
모두 시작 버전 2.0, 반면 것 -Version 3
, -Version 4
그리고 -Version 5
효과적으로 무시하고 5.1을 실행하는 -에 확인$PSVersionTable.PSVersion
잠시 -Version
매개 변수가 여전히 존재 에서pwsh.exe
, PowerShell을 [코어] V6 + CLI는 그 의미가 변경되었습니다 : 그것은 이제 단순히 보고 버전 번호, 즉 목표 실행의 자신의 (따라서 취하는 인수).
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다