标题: [其他] 【已解决】批处理怎样查看C盘已用空间?谢谢 [打印本页]
作者: yyz219 时间: 2023-8-17 11:09 标题: 【已解决】批处理怎样查看C盘已用空间?谢谢
本帖最后由 yyz219 于 2023-8-18 20:13 编辑
完美解决:
查看C盘已用空间.wcs
find C:\=?,a //查C:盘总空间
ifex C:\=?,b //查C:盘剩余空间
calc c=(%a% - %b%) / 1g # 2 //以G为单位,保留两位小数
mess. [C盘已用空间:%c%GB]
********************************
原来的问题:
批处理怎样查看C盘已用空间?
作者: czjt1234 时间: 2023-8-17 11:50
dir 就可以看到,最后一行
作者: yakeyun 时间: 2023-8-17 13:57
回复 1# yyz219 - @echo off&setlocal enabledelayedexpansion
- echo 获取磁盘分区信息:
- echo.
-
- for /f "tokens=1-3" %%a in ('wmic logicaldisk get DeviceID^,Size^,FreeSpace ^|find ":"') do (
- set dp=%%a
- set dpf=%%b
- set dpt=%%c
- echo 磁盘分区: !dp!
-
- REM 将字节转换为GB
- for /f %%d in ('powershell -command " !dpf! / 1024 / 1024 / 1024 "') do set FreeGB=%%d
- for /f %%e in ('powershell -command " !dpt! / 1024 / 1024 / 1024 "') do set TotalGB=%%e
-
- echo 总容量: !TotalGB! GB
- echo 可用容量: !FreeGB! GB
- echo.
- )
-
- pause
复制代码
作者: yakeyun 时间: 2023-8-17 13:59
本帖最后由 yakeyun 于 2023-8-17 18:30 编辑
回复 3# yakeyun
如果只需要获取C盘就是下面代码:- @echo off&setlocal enabledelayedexpansion
- echo 获取磁盘分区信息:
- echo.
-
- for /f "tokens=1-3" %%a in ('wmic logicaldisk get DeviceID^,Size^,FreeSpace ^|find "C:"') do (
- set dp=%%a
- set dpf=%%b
- echo 磁盘分区: !dp!
-
- REM 将字节转换为GB
- for /f %%d in ('powershell -command " !dpf! / 1024 / 1024 / 1024 "') do set FreeGB=%%d
- for /f "tokens=1,2 delims=." %%f in ("!FreeGB!") do (
- set intPart=%%f
- set decPart=%%g
- set decPart=!decPart:~0,2!
- set truncatedValue=!intPart!.!decPart!
- echo 可用容量: !truncatedValue! GB
- echo.
- )
- )
- pause
复制代码
作者: yyz219 时间: 2023-8-17 19:49
回复 yyz219
yakeyun 发表于 2023-8-17 13:57
获取磁盘分区信息:
请按任意键继续. . .
作者: Batcher 时间: 2023-8-17 20:35
回复 5# yyz219
什么操作系统?把代码里面的@echo off&删掉再执行一次截图发出来看看
作者: 77七 时间: 2023-8-17 21:03
本帖最后由 77七 于 2023-8-17 21:22 编辑
dir 就可以看到,最后一行
czjt1234 发表于 2023-8-17 11:50
- @echo off
- rem 批处理保存为ansi编码格式
- for /f "tokens=3" %%a in ('dir c:\ /-c ^|find "可用字节"') do (
- powershell -c "%%a/1024/1024/1024"
- )
- pause
复制代码
如果powershell也用不了,并且要求不精确
- @echo off
- for /f "tokens=3" %%a in ('dir c:\ /-c ^|find "可用字节"') do (
- set n=%%a
- )
- set /a m=%n:~0,-3%/1024/1024
- echo %m%
- pause
复制代码
作者: jszw666 时间: 2023-8-18 00:17
开眼界了,又知道了一个新知识。只是 知道,不是 会
作者: yyz219 时间: 2023-8-18 06:50
回复 yyz219
什么操作系统?把代码里面的@echo off&删掉再执行一次截图发出来看看
Batcher 发表于 2023-8-17 20:35
PE-windows10下
作者: yyz219 时间: 2023-8-18 06:58
如果powershell也用不了,并且要求不精确
77七 发表于 2023-8-17 21:03
如果powershell也用不了,并且要求不精确
@echo off
for /f "tokens=3" %%a in ('dir c:\ /-c ^|find "可用字节"') do (
set n=%%a
)
set /a m=%n:~0,-3%/1024/1024
echo %m%
pause
复制代码———————————查到的是C盘大小‘我希望查剩余空间
作者: Batcher 时间: 2023-8-18 08:42
回复 9# yyz219
建议在顶楼注明是PE-Win10,很多在普通系统里面的脚本在PE里面是无法使用的。
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |