하위 디렉토리에서 특정 크기를 초과하는 가장 큰 파일을 나열하는 Windows 명령 줄 유틸리티가 있습니까?


답변:


29
forfiles /P D:\ /M *.* /S /D +"01/17/2012"  /C "cmd /c if @fsize gtr 209715200 echo @path @fsize @fdate @ftime"

D : \ 및 해당 서브 디렉토리를 스캔하고 마지막 수정 날짜가 "17-JAN-2012"이상이고 크기가 200MB 이상인 모든 파일을 찾은 다음 세부 사항을 인쇄하십시오.

forfiles는 일부 Windows Server에는 포함되어 있지만 Windows XP에는 기본적으로 포함되어 있지 않습니다. http://www.microsoft.com/download/en/details.aspx?id=17657 의 "Windows Server 2003 Resource Kit"다운로드에서 추출 할 수 있습니다 (Windows Server 용이라고 말하면 Win XP에서 실행 됨). 문제없이).


훌륭합니다-이것은 내가 원하는 것을했습니다 (2012 년 1 월 17 일 영국 날짜를 수정하자마자). 감사.
엄버 페룰

6

이것은 PowerShell의 직업처럼 들립니다.

자식을 얻다

해당 디렉토리로 이동하여 다음을 사용하여 특성을 확인하십시오.

get-childitem | get-member

예를 들어 length와 FullName은 흥미롭게 보입니다.

get-childitem |ft fullname, length -auto

기본 사항을 마스터하면 where 문으로 필터링하십시오.

get-childitem | where-object {$_.length -gt 10000} |ft fullname, length -auto

100000으로 실험


Get-ChildItem -recurse를 사용하여 재귀 적으로 검색
themadmax

3

UnxUtils 의 Linux 유틸리티 포트 에는 Linux find 명령이 포함되어 있습니다 .

find는 Windows 명령 프롬프트에 내장 된 기능이므로 find.exe의 이름을 xfind.exe와 같은 다른 이름으로 바꿔야합니다. 그런 다음 다음을 통해 1000000 바이트보다 큰 모든 파일을 찾을 수 있습니다.

xfind 디렉토리-크기 +1000000-인쇄

다음은 Linux 명령 find에 대한 문서 이지만 UnxUtils에서 정확히 어떻게 구현되었고 어떤 버전의 find인지 모르겠습니다.


내가 GnuWin32 더 최신 믿고 : gnuwin32.sourceforge.net ... 플러스 항상 Cygwin에서있다 : cygwin.com
돌팔이 의사 키호테

@ ~ quack : GnuWin32의 FileUtils 패키지는 설치가 상당히 복잡하여 파일이 거의 필요하지 않습니다.
harrymc

그럴 수 있지. 저는 개인적으로 cygwin 사용자입니다. 그리고 설치하기보다 최신 버전을 선호하는 경향이 있습니다. 하지만 당신의 추론을 설명해 주셔서 감사합니다.
quck quixote 21

2

많은 추가 기능을 갖춘 cmd.exe를 무료로 대체하는 Command Console LE (최근에 많이 추천 함)를 가져 가십시오 .PDIR

pdir /s /(fpn z) /[s10485760,]
  • /s 재귀 적으로, 검색하려는 디렉토리에서 명령을 실행하십시오.
  • /(fpn z) 결과를 표시하는 형식은 다음과 같습니다. fullpathfullname size
  • /[s10485760,] 크기 = 10MB 이상

1

cygwin 유틸리티 의 find 명령 이이를 수행합니다. 당신의 요구

디렉토리 트리에서 특정 크기 (예 : 10MB)를 초과하는 파일의 전체 경로를 찾습니다.

결과는 다음과 같습니다.

-size + 10M 찾기 -f -printf "% p % s \ n"찾기

-size +10M10MB보다 "객체"를 제공합니다

-type f 파일 만 제공

-printf찾은 파일을 인쇄하고 %p경로 %s이며 크기 (바이트)이며 \n개행입니다.


1

난 그냥 명령 줄 도구에 일어난 한, Disksum 에 유사 보인다 diruse 하지만 출력의 두 가지 형태를 제공합니다 :

  • 디렉토리 당 파일 수를 기준으로 정렬 (오름차순)
  • 디렉토리 크기별로 정렬 (오름차순)

1

이 솔루션을 사용하는 것이 설명과 함께 더 정확하다고 생각합니다.

http://sourceforge.net/projects/swissfileknife/files/ 에서 명령 행 실행 파일 sfk.exe를 다운로드 하십시오.

이렇게 사용하세요

skf.exe list -big

출력 예 (약어) :

[listing 50 of 78 files by size:]
        3951 mens\noname_30.mht
        3996 mens\noname_14.mht
        3996 mens\noname_25.mht
        4060 mens\noname_24.mht
        4263 mens\noname_31.mht
        4701 mens\noname_1.mht
       14568 Thumbnail Restore.zip
       45056 netmeter.exe
     [...]
     12337752 rktools.exe
     16826024 sp35378.exe
     16926496 jre-6u30-windows-i586.exe
     19480227 SugarCE-6.2.4.zip
     21073936 vlc-1.1.11-win32.exe
     22083184 EasyPHP-5.3.8.1-setup.exe
     25517642 MPSOFTWARE.phpDesigner.v8.0.0.145-CRD.rar
     31085033 phpdesigner8usb.zip
     48835640 netbeans 7.exe
     58900704 ZendServer-CE-php-5.2.17-5.6.0-Windows_x86.exe    
     491538432 53400105.iso

상위 10 개 파일 만 원하는 경우 다음을 사용하십시오.

skf.exe list -big=10

http://stahlworks.com/dev/index.php?tool=list 에서 다음 지침을 추가로 사용자 정의 할 수 있습니다 .



-2

나는 질문이 명령 줄에 관한 것이라는 것을 알고 있지만이 질문은 Google에서 계속 나타나므로 탐색기를 통해 다른 간단한 방법을 추가하십시오.

  1. Windows 탐색기에서 큰 파일을 찾을 위치 (디스크 또는 폴더)를 엽니 다.
  2. 오른쪽 상단 검색 창에 "size : gigantic"을 입력합니다 (상자가 구문 및 기타 가능한 옵션을 자동 제안합니다)

질문은 명령 줄 답변을 찾고있었습니다.
john

이것은 좋고 유효한 답변입니다. downvoted해서는 안됩니다.
zar
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.