반응형
PowerShell PSScriptRoot가 null입니다.
내가 뛸때$PSScriptRoot
돌아오다null
. 저는 PS 버전 4를 사용하고 있습니다.
$val = Join-Path -Path $PSScriptRoot WebPlatformInstaller_amd64_en-US.msi
오류
Join-Path : 빈 문자열이므로 인수를 매개 변수 'Path'에 바인딩할 수 없습니다.
ISE를 사용하는 경우:
$psISE.CurrentFile.FullPath
ISE가 시작되면 $psISE가 생성되며 ISE 인스턴스의 현재 경로를 결정하는 데 사용할 수 있습니다.이는 버전 3.0에서 도입되었습니다.
ISE 객체 모델 계층 참조
셸 또는 ISE에서 경로를 얻으려면 다음과 같은 방법을 사용할 수 있습니다.
if ($psISE)
{
Split-Path -Path $psISE.CurrentFile.FullPath
}
else
{
$global:PSScriptRoot
}
이 표현식이 저장된 .ps1 스크립트에 있는지 확인해야 합니다.
이 문제는 다음과 같은 경우에 발생할 수 있습니다.
- 이 문은 PowerShell ISE 콘솔에서 사용합니다.
- 이 문은 스크립트 파일 없이 PowerShell 콘솔에서 사용합니다.
- PowerShell ISE에서 이 식을 실행하도록 표시했습니다.
사용가능
$PWD.Path
파워쉘 ISE와 파워쉘 콘솔에서 작동합니다.Present Working Directory를 반환합니다.
$PSScriptRoot는 현재 스크립트가 저장되는 루트 경로입니다.명령어에 사용하면 현재 경로를 찾는 스크립트가 없으므로 공백으로 돌아갑니다.
언급URL : https://stackoverflow.com/questions/44474074/powershell-psscriptroot-is-null
반응형
'programing' 카테고리의 다른 글
SharedPreferences.onSharedPreferenceChangeListener가 일관되게 호출되지 않음 (0) | 2023.09.16 |
---|---|
MySQL 타임스탬프는 생성 시에만 사용 (0) | 2023.09.16 |
모든 쿼리 문자열 이름/값 쌍을 컬렉션으로 가져올 수 있는 방법이 있습니까? (0) | 2023.09.11 |
Android: 알림 표시줄에서 알림 제거 (0) | 2023.09.11 |
자바스크립트로 현재 디렉터리 이름을 얻으려면 어떻게 해야 합니까? (0) | 2023.09.11 |