about_Wildcards

간단한 설명

PowerShell에서 와일드카드 문자를 사용하는 방법을 설명합니다.

자세한 설명입니다.

와일드카드 문자는 하나 이상의 문자를 나타냅니다. 이를 사용하여 명령에서 단어 패턴을 만들 수 있습니다. 와일드카드 식은 연산자 또는 와일드카드를 -like 허용하는 매개 변수와 함께 사용됩니다.

예를 들어 디렉터리의 모든 파일을 파일 C:\Techdocs 이름 확장명과 일치하려면 다음을 .ppt 입력합니다.

Get-ChildItem C:\Techdocs\*.ppt

이 경우 별표(*) 와일드카드 문자는 파일 이름 확장명 앞에 .ppt 나타나는 모든 문자를 나타냅니다.

와일드카드 식은 정규식보다 간단합니다. 자세한 내용은 about_Regular_Expressions 참조하세요.

PowerShell은 다음 와일드카드 문자를 지원합니다.

와일드카드 Description 예제 일치 일치하지 않음
* 0개 이상의 문자 일치 a* aA, ag, Apple 바나나
? 해당 위치에서 한 문자 일치 ?n an, in, on 실행
[ ] 문자 범위 일치 [a-l\]ook 책, 요리, 보기 했다
[ ] 특정 문자 일치 [bc]ook 책, 요리 갈고리
`* 임의의 문자를 리터럴로 일치(와일드카드 문자 아님) 12`*4 12*4 1234

동일한 단어 패턴에 여러 와일드카드 문자를 포함할 수 있습니다. 예를 들어 a-l 문자로 시작하는 이름의 텍스트 파일을 찾으려면 다음 입력합니다.

Get-ChildItem C:\Techdocs\[a-l]*.txt

리터럴 문자를 와일드카드 문자로 처리하지 않고 일치하려는 경우가 있을 수 있습니다. 이러한 경우 백틱(`) 문자를 사용하여 와일드카드 문자를 이스케이프하여 리터럴 문자 값을 사용하여 비교할 수 있습니다. 예를 들어 '*hello`?*' "hello?"를 포함하는 문자열과 일치합니다.

많은 cmdlet은 매개 변수 값에 와일드카드 문자를 허용합니다. 각 cmdlet에 대한 도움말 항목에서는 와일드카드 문자를 허용하는 매개 변수에 대해 설명합니다. 와일드카드 문자를 허용하는 매개 변수의 경우 대/소문자를 구분하지 않습니다.

명령 및 스크립트 블록에서 와일드카드 문자를 사용하여 속성 값을 나타내는 단어 패턴을 만들 수 있습니다. 예를 들어 다음 명령은 ServiceType 속성 값에 Interactive가 포함된 서비스를 가져옵니다.

Get-Service | Where-Object {$_.ServiceType -Like "*Interactive*"}

다음 예제 If 에서 문은 와일드카드 문자를 사용하여 속성 값을 찾는 조건을 포함합니다. 복원 지점의 설명PowerShell이 포함된 경우 이 명령은 복원 지점의 CreationTime 속성 값을 로그 파일에 추가합니다.

$p = Get-ComputerRestorePoint
foreach ($point in $p) {
  if ($point.description -like "*PowerShell*") {
    Add-Content -Path C:\TechDocs\RestoreLog.txt "$($point.CreationTime)"
  }
}

참고 항목