[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[系统相关] [已解决]cmd里面如何查磁盘空间

本帖最后由 habulu 于 2021-7-8 20:10 编辑

有什么命令可以直接在cmd里面看磁盘空间么,不需要放bat里的那种。

我也找了一个,但不直观:
wmic volume get  Name,Capacity,FreeSpace
输出
  1. Capacity      FreeSpace     Name
  2. 127221624832  26603552768   C:\
  3. 523235328     156549120     \\?\Volume{af9dc4cf-4748-4c7f-8937-56d24a7ccb5d}\
  4.                             G:\
复制代码
看上去不直观,如果能把byte单位转成G也可以

mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c echo list volume |diskpart &pause","","runas",1)(window.close)&&exit /b

TOP

测了下楼上的脚本
显示的好像是磁盘总大小,其实平时一般会更关心剩余磁盘空间大小
另外原先的窗口好像被关了,这样如果一次执行多个cmd命令的话,之前的输出看不到了

TOP

本帖最后由 habulu 于 2021-7-8 07:48 编辑

我又换了个格式,输出比之前的更直观点,就差byte单位转GB,感觉
wmic logicaldisk get DeviceID,Size,FreeSpace,Description,FileSystem
  1. Description   DeviceID  FileSystem  FreeSpace     Size
  2. 本地固定磁盘  C:        NTFS        26514804736   127221624832
  3. 光盘          G:
复制代码
如果能把后面两个输出都做“/1024/1024/1024”处理就最好,类似下面,可惜不能输出
wmic logicaldisk get DeviceID,Size/1024/1024/1024,FreeSpace/1024/1024/1024,Description,FileSystem

TOP

本帖最后由 habulu 于 2021-7-8 08:04 编辑

找个个网站
https://superuser.com/questions/ ... et-disk-space-in-gb
上面有类似的,这个好像可以,就是感觉代码有点长:
for /f "tokens=1-3" %a in ('WMIC LOGICALDISK GET FreeSpace^,Name^,Size ^|FINDSTR /I /V "Name"') do @echo wsh.echo "%b" ^& " free=" ^& FormatNumber^(cdbl^(%a^)/1024/1024/1024, 2^)^& " GiB"^& " size=" ^& FormatNumber^(cdbl^(%c^)/1024/1024/1024, 2^)^& " GiB" > %temp%\tmp.vbs & @if not "%c"=="" @echo( & @cscript //nologo %temp%\tmp.vbs & del %temp%\tmp.vbs

TOP

powershell
  1. Get-Volume
复制代码
cmd
  1. powershell -c "get-volume"
复制代码

TOP

返回列表