2010-06-21 3 views
2

전 Powershell을 처음 접했고 디렉토리에있는 모든 비 mp3 파일을 삭제하는 스크립트를 작성하고 싶었습니다.Powershell - 비 mp3 파일을 모두 삭제하십시오.

내 솔루션 :이 성명에서 개선 될 수있다 또는 다른 방식으로 작성 될 수있는 어떤

get-childitem -Recurse | 
Where-Object {!($_.PSIsContainer)} | 
Where {$_.Extension -ne ".mp3"} | 
remove-item 

. 이 진술에 문제가 있습니까?

감사합니다. 당신은 어떤 디렉토리가 'MP3'확장자가 없도록 경우

Get-childitem -Recurse | 
    Where-Object {!$_.PSIsContainer -AND $_.Extension -ne '.mp3'} | 
    Remove-Item -whatIf 

:

Get-childitem -Recurse | Where-Object {$_.Extension -ne '.mp3'} | 
    Remove-Item -whatIf 

-whatIf를 제거하고 파일을 삭제

+1

나는 xcud의 대답과 함께 갈 것이지만, 테스트를 하나의 Where-Object 명령에 결합 할 수 있다는 것을 명심하십시오. 'Where {! $ _. PSIsContainer - and ($ _. Extension -ne '.mp3')}' –

답변

5

난 그냥 하나 Where-Object 명령을 사용합니다.

+0

무엇을할까요? – kamahl

+0

실제로 명령을 실행하지 않고 명령을 실행 한 경우 발생하는 상황을 설명합니다. –

관련 문제