160;:DiskStatus
echo Letter / Label / Total Space / Used Space / Free Space / Filesystem
set "GB=1073741824"
for /f "skip=1 delims=" %%i in ('wmic logicaldisk get DeviceID^,FreeSpace^,Size^,VolumeName^,Filesystem') do (
160; for /f "tokens=1-5" %%j in ("%%i") do call :Diskoutput %%j %%k %%l %%m %%n
)
:Diskoutput
if "%4"=="" (
160; goto :eof
)
for /f "tokens=1-6" %%i in (
160; 'mshta vbscript:Execute("CreateObject(""Scripting.FileSystemObject"").GetStandardStream(1).Write(FormatNumber(%4/%GB%, 2) & "" "" & FormatNumber((%4-%3)/%GB%, 2) & "" "" & FormatNumber(%3/%GB%, 2) & "" "" & Round((%4-%2)*50/%4)):Close"^)'
) do (
160; set "size=%%i"
160; set "used=%%j"
160; set "free=%%k"
160; set /a "nUsed=%%l, nFree=50-%%l"
)
echo %1 160; 160; / %5 / %size:~-10% GB / %used:~-10% GB / %free:~-10% GB / %2
보시lj16;대/196; wmic/196; 가1256;온 1221;보를 vbs/196; 용량 ǥ12;ǥ16; GBi/196; 변환후 출/141;Ȣ16;lj16; 함수1077;니다
호출해서 돌리면 1060;런식1004;/196; 찍7193;니다
문1232; 스샷에도 나오Ǐ19;1060; Label1060;나 획ሖ1;한 용량1032; 문1088;열 길1060;에 따라서 /112;1060;아웃1060; 엉ኖ1;1004;/196; 출/141;1060; .121;니다
출/141; 1649;1204;1032; %2~5를 가공해서 1068;1221; 길1060;가 안 .104;면 모1096;란만큼 공0177;1012; 추가해서 길1060;를 맞추면 .112;Ǐ19;한데, batch/196; 문1088;열 못 다루Ǻ12;서 글 올/140;봅니다
출/141;.104;lj16; 문1088;열 길1060;lj16; 현1228; 1316;1116;Ȣ16;lj16; 가1109; 큰 디스크1064; 16T까1648;를 상1221;해서 #####.##GB, Labelᅆ1;우lj16; 1204;체 길1060;를 고/140;해서 10~15byte1221;도를 상한1004;/196; 1105;고 /112;1060;아웃1004;/196; 1105;고1088; 합니다
Letter / Label / Total Space / Used Space / Free Space / Filesystem
C: 160; 160; /10글1088;/#####.##Gb /#####.##Gb /#####.##Gb / 160;NTFS
D: 160; 160; / 160; 160; 160;D/ 160; 160;100.00Gb / 160; 160; 160;0.00Gb / 160; 160;100.00Gb / 160;FAT332
1060;런식1004;/196; 모1096;란 길1060;만큼 1204;0169; 공0177;1004;/196; 처리해서 1068;1221;Ȣ16;,172; 출/141;Ȣ16;면 .121;니다
참고/196; Powershell1012; 쓸 수 없lj16; 환ᅆ1;에서 돌릴꺼라 Powershell/196;lj16; 1684; 수 없습니다 (외ǥ12; 0148;1060;너리 추가가 필요Ȣ16;면 써도 상관없1648;만, 상용 사용1060; 허가.104;Ǻ12;1080;Ǻ12;야 합니다)
http://www.2cpu.co.kr/hardware_2014/44147
컴 케이스 작다고 불타거나 하지 않아요
https://www.google.com/search?q=vbscript+pad+string&client=firefox-b-d&sxsrf=AOaemvKRfz34ZbmaHBX9kFq3BgyNi-Oqnw%3A1632966154217&ei=ChZVYeHfDIeK0ASLl6vQCA&oq=vbscript+pad+string&gs_lcp=Cgxnd3Mtd2l6LXNlcnAQAxgCMgUIABDLATIFCAAQywEyBAgAEB4yBAgAEB4yBAgAEB4yBAgAEB4yBAgAEB4yBggAEAgQHjoHCAAQRxCwAzoFCAAQgAQ6CAgAEIAEEIsDOggIABDLARCLA0oECEEYAFCuCljxHGDEQ2gCcAJ4AIABfogB4gSSAQMwLjWYAQCgAQHIAQO4AQLAAQE&sclient=gws-wiz-serp
Á¦ ÄÄÇ»ÅÍ¿¡¼ Çѹø µ¹·Á º¼°Ô¿ä...¤¾
½ºÅ©¸³Æ® ³»¿¡
FormatNumber(%3/%GB%, 2)
·Î µÈ ºÎºÐÀ»
Right(" " & FormatNumber(%3/%GB%, 2), 10)
¿ä·± ½ÄÀ¸·Î ¾Õ¿¡ ½ºÆäÀ̽º¸¦ Àû´çÈ÷ ³ÖÀº ´ÙÀ½¿¡ Right ÇÔ¼ö·Î ¿øÇÏ´Â ±æÀÌ(À§¿¡¼± 10ÄÀ̶ó Çß°í) ¸¸Å Àß¶ó¼ ¾²¸é...
Right(String(10," ") & FormatNumber(%3/%GB%, 2), 10) ¿ä·¸°Ô Çß´õ´Ï ¹º°¡ ¿¡·¯°¡ ³ª¼ À߾ȵdz׿ä. vbs´Â ¾È½áºÁ¼...
) do (
set "label= %5"
set "size= %%i"
set "used= %%j"
set "free= %%k"
set /a "nUsed=%%l, nFree=50-%%l"
)
echo %1 / %label:~-10% / %size:~-10% GB / %used:~-10% GB / %free:~-10% GB / %2
À§ÂÊ¿¡ Ä÷³¸íÀº ¾Ë¾Æ¼ ¸ÂÃß½Ã¸é µÇ°í..
½ÇÄÆ ÄÚµå Â¥´Ù°¡ Áö±Ý µé¾î¿Íº¸´Ï Á¤´äÀÌ Àֳ׿ä (°¨»çÇÕ´Ï´Ù)
echo Letter / Label/ Total Space / Used Space / Free Space / Filesystem
set "GB=1073741824"
for /f "skip=1 delims=" %%i in ('wmic logicaldisk get DeviceID^,FreeSpace^,Size^,VolumeName^,Filesystem') do (
for /f "tokens=1-5" %%j in ("%%i") do call :Diskoutput %%j %%k %%l %%m %%n
)
:Diskoutput
if "%4"=="" (
goto :eof
)
for /f "tokens=1-6" %%i in (
'mshta vbscript:Execute("CreateObject(""Scripting.FileSystemObject"").GetStandardStream(1).Write(FormatNumber(%4/%GB%, 2) & "" "" & FormatNumber((%4-%3)/%GB%, 2) & "" "" & FormatNumber(%3/%GB%, 2) & "" "" & Round((%4-%2)*50/%4)):Close"^)'
) do (
set "size=%%i"
set "used=%%j"
set "free=%%k"
set /a "nUsed=%%l, nFree=50-%%l"
)
set varLetter=%1
rem -------------------------------------------------------------------
set varLabel=%5
set PadLabel1=%varLabel:~%
call :padLabel
set varLabel=%PadLabel2:~%
set varTotalSpace=%size:~-10%
set PadTotalSpace1=%varTotalSpace:~%
call :padTotalSpace
set varTotalSpace=%PadTotalSpace2:~%
set varUsedSpace=%used:~-10%
set PadUsedSpace1=%varUsedSpace:~%
call :padUsedSpace
set varUsedSpace=%PadUsedSpace2:~%
set varFreeSpace=%free:~-10%
set PadFreeSpace1=%varFreeSpace:~%
call :padFreeSpace
set varFreeSpace=%PadFreeSpace2:~%
set varFilesystem=%2
set PadFilesystem1=%varFilesystem:~%
call :padFilesystem
set varFilesystem=%PadFilesystem2:~%
goto :EOF
rem -------------------------------------------------------------------
:padLabel
set PadLabel1=%PadLabel1:~% **********
set PadLabel1=%PadLabel1:~0,14%
for /f "tokens=1,2" %%a in ("%PadLabel1%") do set PadLabel1=%%b%%a
set PadLabel1=%PadLabel1:~%
set PadLabel1=%PadLabel1: =`%
set PadLabel2=
set /a counter=-1
:Labelnxtchar
set /a counter+=1
call :EXEC set padchar=%%PadLabel1:~%counter%,1%%%
if not defined padchar goto :eof
if [%padchar%] EQU [*] set padchar=
set PadLabel2=%PadLabel2%%padchar%
goto :Labelnxtchar
rem -------------------------------------------------------------------
:padTotalSpace
set PadTotalSpace1=%PadTotalSpace1:~% **********
set PadTotalSpace1=%PadTotalSpace1:~0,9%
for /f "tokens=1,2" %%a in ("%PadTotalSpace1%") do set TotalSpace1=%%b%%a
set PadTotalSpace1=%PadTotalSpace1:~%
set PadTotalSpace1=%PadTotalSpace1: =%
set PadTotalSpace2=
set /a counter=-1
:TotalSpacenxtchar
set /a counter+=1
call :EXEC set padchar=%%PadTotalSpace1:~%counter%,1%%%
if not defined padchar goto :eof
if [%padchar%] EQU [*] set padchar=
set PadTotalSpace2=%padchar%%PadTotalSpace2%
goto :TotalSpacenxtchar
rem -------------------------------------------------------------------
:padUsedSpace
set PadUsedSpace1=%PadUsedSpace1:~% **********
set PadUsedSpace1=%PadUsedSpace1:~0,9%
for /f "tokens=1,2" %%a in ("%PadUsedSpace1%") do set UsedSpace1=%%b%%a
set PadUsedSpace1=%PadUsedSpace1:~%
set PadUsedSpace1=%PadUsedSpace1: =%
set PadUsedSpace2=
set /a counter=-1
:UsedSpacenxtchar
set /a counter+=1
call :EXEC set padchar=%%PadUsedSpace1:~%counter%,1%%%
if not defined padchar goto :eof
if [%padchar%] EQU [*] set padchar=
set PadUsedSpace2=%padchar%%PadUsedSpace2%
goto :UsedSpacenxtchar
rem -------------------------------------------------------------------
:padFreeSpace
set PadFreeSpace1=%PadFreeSpace1:~% **********
set PadFreeSpace1=%PadFreeSpace1:~0,9%
for /f "tokens=1,2" %%a in ("%PadFreeSpace1%") do set FreeSpace1=%%b%%a
set PadFreeSpace1=%PadFreeSpace1:~%
set PadFreeSpace1=%PadFreeSpace1: =%
set PadFreeSpace2=
set /a counter=-1
:FreeSpacenxtchar
set /a counter+=1
call :EXEC set padchar=%%PadFreeSpace1:~%counter%,1%%%
if not defined padchar goto :eof
if [%padchar%] EQU [*] set padchar=
set PadFreeSpace2=%padchar%%PadFreeSpace2%
goto :FreeSpacenxtchar
rem -------------------------------------------------------------------
:padFilesystem
set padFilesystem1=%padFilesystem1:~% **********
set padFilesystem1=%padFilesystem1:~0,11%
for /f "tokens=1,2" %%a in ("%padFilesystem1%") do set padFilesystem1=%%b%%a
set padFilesystem1=%padFilesystem1:~%
set padFilesystem1=%padFilesystem1: =`%
set padFilesystem2=
set /a counter=-1
:Filesystemnxtchar
set /a counter+=1
call :EXEC set padchar=%%PadFilesystem1:~%counter%,1%%%
if not defined padchar goto :done
if [%padchar%] EQU [*] set padchar=
set PadFilesystem2=%PadFilesystem2%%padchar%
goto :Filesystemnxtchar
rem -------------------------------------------------------------------
:done
echo %varLetter% / %PadLabel2% / %PadTotalSpace2% GB / %PadUsedSpace2% GB / %PadFreeSpace2% GB / %PadFilesystem2%
goto :EOF
:EXEC
%*
goto :EOF
ÀÌ·± ¾²·¹±â Äڵ带 ÀÛ¼ºÈÄ µð¹ö±× ÇÏ°í ÀÖ¾ú½À´Ï´Ù (...) (ÀÛµ¿Àº Çϴµ¥, ¿ë·® ºÎºÐÀÌ Å׶ó´ÜÀ§°¡ µÇ¾î¼ ³Ê¹« ±æ¸é ¹®Á¦µÇ´Â°Å¶û LabelÀÌ ¾ø´Â°æ¿ì ~·Î ³ª¿À´Â°Í °íÄ¥·Á°í »ðÁúÁßÀ̾úÀ½)
¿ª½Ã ÇÁ·Î±×·¡¹ÖÀº ¾Æ¹«¸® °£´ÜÇÑ°Å¶óµµ ¾Æ´Â°Ô ÈûÀ̱º¿ä (ÄÚµå ºÐ·®µµ ¹®Á¦Áö¸¸, ·çÇÁ¸¦ ³Ñ ¸¹ÀÌ ½á¼ ó¸® ¼º´Éµµ ³ª»Ý)
@echo off
echo ^|------^|---------------^|-------------^|-------------^|-------------^|----------^|
echo ^|Letter^| Label^| Total Space ^| Used Space ^| Free Space ^|Filesystem^|
echo ^|------^|---------------^|-------------^|-------------^|-------------^|----------^|
set "GB=1073741824"
for /f "skip=1 delims=" %%i in ('wmic logicaldisk get DeviceID^,FreeSpace^,Size^,VolumeName^,Filesystem') do (
for /f "tokens=1-5" %%j in ("%%i") do call :Diskoutput %%j %%k %%l %%m %%n
)
:Diskoutput
if "%4"=="" (
goto :eof
)
for /f "tokens=1-6" %%i in (
'mshta vbscript:Execute("CreateObject(""Scripting.FileSystemObject"").GetStandardStream(1).Write(FormatNumber(%4/%GB%, 2) & "" "" & FormatNumber((%4-%3)/%GB%, 2) & "" "" & FormatNumber(%3/%GB%, 2) & "" "" & Round((%4-%2)*50/%4)):Close"^)'
) do (
set "label= %5"
set "size= %%i"
set "used= %%j"
set "free= %%k"
set "FileSystem= %2"
set /a "nUsed=%%l, nFree=50-%%l"
)
echo ^|%1 ^|%label:~-14% ^|%size:~-9% GB ^|%used:~-9% GB ^|%free:~-9% GB ^| %Filesystem:~-6% ^|
echo ^|------^|---------------^|-------------^|-------------^|-------------^|----------^|
ÀÌ·¸°Ô ·¹À̾ƿô Á¶ÀýµÇ¾ú½À´Ï´Ù