답변:
구출을위한 Powershell
Windows 7/8의 시대에 그것은 좋은 오래된 명령 행의 후계자입니다
Del C:\myFolder\* -exclude '*.jpg'
Del
의 별칭입니다 Remove-Item
. 재귀, 포함, 제외 및 필터링과 같은 몇 가지 옵션이 있습니다 (RegEx에 사용).
\*
주어진 폴더에 파일을 포함 시키려면 추가 해야합니다
PowerShell.exe -Command "&{Remove-Item C:\MyFolder\* -Exclude '*.jpg'}"
다양한 깊이의 수백 개의 디렉토리에 20,000 개의 파일이 포함되어있는 Windows 7 (NTFS 볼륨)의 TREE 디렉토리에서 확장자가 ".mp3"이 아닌 모든 파일을 찾는 방법을 찾고있었습니다. 불안, 나는 다음을 사용했다 :
cd <theplace>
dir /S | find /V "<DIR>" | find /V "Total" | find /V "bytes" | find /V "Directory" | find /V "Volume" | find /V ".mp3" | more /S
이것은 DIR 명령 출력과 관련된 모든 것을 제거한 후 .mp3와 일치하지 않는 파일을 나열했습니다 ... 99 % 작동합니다 ... 일치하지 않는 파일의 이름이 표준 DIR 출력의 키워드 중 하나가 아닌 한- 아마도 DIR 보고서를 헤더 / 요약 정보를 적게 만드는 방법이있을 수 있지만 이것이 대부분의 방법으로 귀찮게하지 않았습니다.
/b
은 dir
명령 의 플래그입니다 . dir /b
현재 디렉토리에만 파일 이름 및 확장자를 dir /s /b
나열하고 현재 및 모든 서브 디렉토리에있는 모든 파일의 완전한 이름을 나열합니다. 루프 find /v
대신 파이핑 for
하는 것은 기억해야 할 좋은 터치이지만 그것이 작동한다고 생각하지 않습니다 del
.
/s
하위 디렉토리에 파일을 재귀 적으로 포함하려면 각 줄에 추가하십시오 .