윈 도 우 윈도우7!!!!!에서 탐색기에 크기 항목에 파일뿐만 아니라 폴더 크기도 표시하기
2012.02.07 22:55
제가 원하는 화면이 위 화면과 같은 상태입니다. 탐색기에 폴더 사이즈 항목에 파일과 폴더의 크기가 표시됩니다.
이 스샷은 '폴더 사이즈' 프로그램을 적용 시킨 화면입니다. 하지만 유감스럽게 이 프로그램은 윈도우7에는
적용이 안됩니다. ㅠㅠ 윈도우7에서도 탐색기에서 폴서 크기 알 수 있는 방법이 없나요???
저도 구글로 검색하면서 답을 구하고 있었는데 어느분이 스크립트로 할수 있다고 글을 올려 주셨는데 어떻게 적용하는지
모르겠습니다. 혹시 이걸 어떻게 적용하는지 해석해 주실수 있나요??
----------------------------------------------퍼온 댓글-------------------------------------------------------------
For those who like to roll their own, this VB Script code will work with Windows 7 and show a simple list with folders and sizes from a cmd prompt. You can specify the depth. It's very fast. Run with no parameters for instructions.
' ====================================================================
' DirSize7.vbs
' Used to display dir sizes in Windows 7 or XP.
'
' To Use: cscript DirSize7.vbs C:\temp 4
' Where:
' First parm = The dir to start with (default = script dir)
' Second parm = number of child dirs to display (default = 4)
'
' 2010/7/20 - Tom Woodgerd - Upgraded from DirSizeXP. Added code to handle folders with no access.
' ====================================================================
option explicit ' Require declaration of variables.
Dim arrArgs
Dim strTopDir
Dim numDepth
Dim iii
Dim strEOL
Dim strTab
Dim ws
Dim fso
Dim strFolder
Dim arrFolderCollection1
Dim arrFolderCollection2
Dim arrFolderCollection3
Dim arrFolderCollection4
Dim strDisp
Dim strF1
Dim strF2
Dim strF3
Dim strF4
Dim strRootFolder
Dim int_strF1Size
Set ws = WScript.CreateObject ("Wscript.Shell")
strEOL = chr(10) & chr(13)
strTab = chr(9)
Set fso = CreateObject("Scripting.FileSystemObject")
' --------------- Get command line arguments.
Set arrArgs = WScript.Arguments
' --------- Get folder from command line or if none, the script dir.
If arrArgs.Count > 0 Then
strTopDir = arrArgs(0)
Else
strTopDir = fso.GetParentFolderName(Wscript.ScriptFullName)
End If
' --------- Get depth from command line or default = 4.
If arrArgs.Count > 1 Then
numDepth = arrArgs(1)
If numDepth > 4 Then
numDepth = 4
End If
Else
numDepth = 4
End if
If arrArgs.Count > 0 Then
WScript.Echo "====================================================================++======"
WScript.Echo "DirSize7: Starting From: " & strTopDir & " Depth = " & numDepth
WScript.Echo ""
WScript.Echo "=========================================================(Ver 7/20/2010)===="
Else
WScript.Echo "======================================================================++===="
WScript.Echo "DirSize7: Starting From: " & strTopDir & " Depth = " & numDepth
WScript.Echo ""
WScript.Echo " Useage: cscript dirsize7.vbs D:\temp 3"
WScript.Echo " Where:"
WScript.Echo " Starting Directory = D:\temp"
WScript.Echo " Deepest folder to display = 3 (up to 4 max)"
WScript.Echo ""
WScript.Echo "==========================================================(Ver 7/20/2010)==="
End If
' --------- Main Loop ---------------------------------------------
Set strFolder = fso.GetFolder(strTopDir)
If Not strFolder.IsRootFolder then
int_strF1Size = 0
On Error Resume Next
int_strF1Size = strFolder.size
If int_strF1Size = 0 then '--- See if we have access.
WScript.Echo "----No Access---- " & strFolder
WScript.quit
Else
WScript.Echo f_AddCommas(strFolder.size), " "& strFolder
end if
End If
Set arrFolderCollection1 = strFolder.SubFolders
For Each strF1 in arrFolderCollection1
int_strF1Size = 0
On Error Resume Next
int_strF1Size = strF1.size
If int_strF1Size = 0 then '--- See if we have access.
WScript.Echo " ----No Access---- " & strF1
Else
WScript.Echo f_AddCommas(strF1.size), " "& chr(28)&" "& strF1
If numDepth >= 2 Then '----------------------------- Start of 2nd level
Set strFolder = fso.GetFolder(strF1)
Set arrFolderCollection2 = strFolder.SubFolders
For Each strF2 in arrFolderCollection2
WScript.Echo f_AddCommas(strF2.size), " "& chr(28)&" "& strF2
If numDepth >= 3 Then '----------------------- Start of 3rd level
Set strFolder = fso.GetFolder(strF2)
Set arrFolderCollection3 = strFolder.SubFolders
For Each strF3 in arrFolderCollection3
WScript.Echo f_AddCommas(strF3.size), " "& chr(28)&" "& strF3
If numDepth >= 4 Then '----------------- Start of 4th level
Set strFolder = fso.GetFolder(strF3)
Set arrFolderCollection4 = strFolder.SubFolders
For Each strF4 in arrFolderCollection4
WScript.Echo f_AddCommas(strF4.size), " "& chr(28)&" "& strF4
Next
End If '--------------------------------- End of 4th level
Next
End If '----------------------------------- End of 3rd level
Next
End If ' ---------------------------------- End of 2nd Level
End if
Next
' -------------------------- Format a numeric string with commas
Function f_AddCommas(parmStr)
Dim strTemp
' ---- Drop the ".00"
strTemp = left(formatcurrency(parmStr), Instr(formatcurrency(parmStr), ".")-1 )
strTemp = mid(strTemp,2) ' Drop the $
f_AddCommas = space(15-len(strTemp)) & strTemp
End Function
-----------------------------------------------------------여기까지----------------------------------------------------
출처 : https://social.technet.microsoft.com/Forums/en/w7itproui/thread/ce998316-c210-4cdb-a38b-69be223a305f
우선 메모장으로 읽어서 모든파일 형식으로 vbs로 저장해서 명령프로토콜로 열어서 적용하는게 맞는지요??
댓글 [4]
-
YhK군 2012.02.07 23:07 -
rlfekmk 2012.02.07 23:22 퍼포먼스에 상당한 손해를 볼것 같네요
-
초월신 2012.02.08 08:56 이 스크립트가 Explorer에 폴더크기를 보여주게 한다고 나와있나요?
그냥 폴더크기만 구해서 자체적으로 출력하는거 아닐런지.....
윈7에서는 IColumnProvider라고하는 컬럼 정보를 다루는 COM 인터페이스가 제거되었습니다.
즉, 정석적인 프로그래밍으로는 Explorer에 그런 기능을 넣을 수 있는 방법이 없다는 거죠.굳이 가능하게 하자면, Explorer를 분석해서 코드를 변조시키고 일부 기능을 후킹해서
외부모듈을 집어넣어야 될 듯....(해킹의 영역입니다.)
굳이 그런기능이 필요하면 Xplorer2 라는 쉘 대체 프로그램을 사용하라고 하는군요.
-------------
MSDN에 따르면, 윈 비스타 이후로는 Property Handlers라는 방식을 사용하게 바뀌었다고 합니다.
즉, FolderSize라는 프로그램을 새 방식에 맞게 바꿔야 한다는거네요......
-
꼬마야 2012.02.08 16:28
그냥 토탈커맨더 쓰세요... 플러그인 깔면 됩니다. content 용이나 viewer용으로 있읍니다.
content plugin을 사용할려면 필요할때만 사용해야 합니다. 성능저하가 있읍니다.
content plugin 사용예
뷰어사용
번호 | 제목 | 글쓴이 | 조회 | 등록일 |
---|---|---|---|---|
[공지] | 질문과 답변 게시판 이용간 유의사항 | gooddew | - | - |
28314 | 소프트웨어| 토렌트 프로그램을 쓰지않고 콜노보에서 직접 마그넷 | 달달달 | 2987 | 02-09 |
28313 | 윈 도 우| 하드가 RAW 상태인데 포맷하고 싶습니다. [1] | 매력종환 | 3010 | 02-08 |
28312 | 윈 도 우| windows 모바일 센터 삭제가능한가요?? | skynet | 2090 | 02-08 |
28311 | 하드웨어| 조립좀 할려는데 조언좀 부탁드려요. [4] | 태양은 없 | 2430 | 02-08 |
28310 | 윈 도 우| C 드라이브가 꽈악 찼는데 [2] | 몸빼 | 2643 | 02-08 |
28309 | 서버 / IT| pe상의 포터블 왕초보가 죄송한데 질문 드려요^^ [3] | 짚신 | 2925 | 02-08 |
28308 | 윈 도 우| C:\Users\아무개\AppData\Local\Temp 내 파일 삭제.. [4] | RED4 | 11141 | 02-08 |
28307 | 소프트웨어| 컴 두대 이상 조립시 투루이미지 사용 관련해서요. [2] | 비가와 | 2761 | 02-08 |
28306 | 하드웨어| 이 컴퓨터 어떤거 같나요 (영문사이트) [6] | michael | 2903 | 02-08 |
28305 | 윈 도 우| 관리자 모드로 설치하도록 ISO파일을 개조하는방법좀 알려... [2] | 확님 | 2630 | 02-08 |
28304 | 윈 도 우| 경로 문제 폴더명을 바꾸면 실행이 안되요 ㅠㅠ[스크린샷 ... [6] | 수승화강 | 2757 | 02-08 |
28303 | 서버 / IT| 사무실에서 누군가 대용량 파일을 내려받으면 다른 직원 인... [8] | 12cho | 3488 | 02-08 |
28302 | 하드웨어| 문의)) 램디스크에서 페이징파일을 잡는다면 어느정도 잡아... [6] | chobits | 3569 | 02-08 |
28301 | 윈 도 우| 윈7 서비스팩에 따른 시디키도 다른가요? [5] | 흐아 | 3056 | 02-08 |
28300 | 윈 도 우| 예약파티션 없게 설치하도록 개조하는 방법 알려주세요. [2] | 알라뷰 | 2738 | 02-08 |
28299 | 기 타| 파폭에서의 Lastpass [2] | 친일친북척살 | 3051 | 02-08 |
28298 | 윈 도 우| UltraISO로 윈7 USB 디스크가 안만들어져요 ㅠㅠ [3] | 너구리세상 | 3402 | 02-07 |
28297 | 소프트웨어| 노턴 인터넷 시큐리티 2012 평가판을 다운로드후 업데이트... | 기러기 | 2916 | 02-07 |
» | 윈 도 우| 윈도우7!!!!!에서 탐색기에 크기 항목에 파일뿐만 아니라 ... [4] | 하루나 | 5165 | 02-07 |
28295 | 윈 도 우| 아 윈7 엔터프라이즈 64bit 원본 구할때없나요? [3] | 흐아 | 3469 | 02-07 |
DirSize7.vbs이 C:\어쩌고저쩌고에 있으면
명령프롬프트에서
cscript DirSize7.vbs C:\어쩌고저쩌고 4
치라는 것 같은데여
끝에 4가 기본값인데, 이런개념같네여. "최대 하위폴더 4단계까지 표시"
예를 들어서 1이라고 하면, c:\program files\에서 탐색기열어놓고볼때
c:\program files\daum\폴더에 바로있는 파일들만 포함해 용량표시,
c:\program files\daum\potplayer폴더같이 2단계 하위폴더는 용량계산에서 제외하는
이런개념같내여