2017-11-27 1 views
-1

을 기반으로합니다. -IsValid는 경로 구문이 올바른지 확인해야합니다. 내가 테스트 경로에 대한 넣어 뭐든지 항상Powershell Test-Path -Isvalid는 항상 true를 반환합니다. 설명서에 따라

이 cmdlet은 경로의 요소가 존재하는지 여부에 관계없이 의 경로의 구문을 테스트 있음을 나타냅니다 true를 돌려줍니다. 경로 구문이 거짓 $ 유효하며 경우가

$val = Test-Path "sadfasdasdfasdf" -IsValid 

답변

2

모든 간다처럼 확실히 보일 수없는 경우이 cmdlet를 반환 $ true로, 그러나 그것은 그렇지 않다. -IsValid은 구문 검사 만 수행합니다. 구문에는 아무런 문제가 없습니다. "sadfasdasdfasdf"은 현재 디렉토리 내의 서브 디렉토리가 될 수 있습니다.

다음 경로가 잘못 따라서 잘못된 구문을 사용하고있다 :

PS C:\> Test-Path "foo>bar" -IsValid # Redirection in path 
False 
PS C:\> Test-Path "foo:bar" -IsValid # Edge case, HKLM:USER would be valid 
False 
PS C:\> Test-Path "foo|bar" -IsValid # Pipe in path 
False 
관련 문제