不用wmic写一个bat脚本,用于获取磁盘的总空间和剩余可用空间有多少MB
时间: 2024-09-27 16:15:12 浏览: 20
当然可以。你可以使用Windows API函数`GetDiskFreeSpaceEx`来编写一个简单的批处理脚本来获取磁盘的总空间和剩余可用空间。这里是一个示例:
```batch
@echo off
setlocal enabledelayedexpansion
:: 定义变量来存储结果
set drive=%~dp0%
set total=0
set free=0
:: 循环遍历所有驱动器(包括系统盘)
for /f "tokens=*" %%d in ('dir /ad/b/s ^| find ":"') do (
set current_disk=!drive!!%%d\
:: 调用API获取磁盘信息
for /f "tokens=2 delims=:," %%a in ('fsutil fsinfo diskfree %current_disk%') do (
set total=!total!+%%a
set free=!free!+%%b
)
)
:: 计算并显示结果(单位为MB)
set totalmb=!total!/1048576
set freemb=!free!/1048576
echo 总空间(MB): !totalmb!
echo 剩余空间(MB): !freemb!
endlocal
```
保存这个脚本为`.bat`文件,双击运行即可看到当前系统的每个驱动器的总空间和剩余可用空间。
相关问题
写一个bat脚本,用于获取磁盘的总空间和剩余可用空间有多少MB
当然可以,这是一个简单的批处理脚本(.bat文件),用于获取Windows系统的磁盘总空间和剩余可用空间(单位为MB):
```batch
@echo off
setlocal enabledelayedexpansion
REM 获取系统盘信息
for /f "tokens=2 delims=:" %%i in ('wmic logicaldisk get caption^,size free') do (
set "diskCaption=%%i"
set "diskSize=!%%j!"
set "freeSpace=!%%k!"
REM 转换大小到MB并显示结果
set diskSizeMB=%diskSize:/1024/=%
set freeSpaceMB=%freeSpace:/1024/=%
echo.
echo 盘符: %diskCaption%
echo 总空间: !diskSizeMB! MB
echo 剩余空间: !freeSpaceMB! MB
)
pause
```
这个脚本首先使用`wmic`命令从Windows Management Instrumentation (WMI) 查询逻辑硬盘的信息,然后通过一些字符串操作将其转换为MB,并显示出来。运行此脚本后,它会暂停一会儿,直到用户按下任意键才会继续。
写一个Windows 批处理脚本来获取 CPU/内存和磁盘使用率
好的,以下是一个获取Windows系统CPU/内存和磁盘使用率的批处理脚本:
```batch
@echo off
:loop
cls
echo CPU Usage:
typeperf "\Processor(_Total)\% Processor Time"
echo Memory Usage:
typeperf "\Memory\% Committed Bytes In Use"
echo Disk Usage:
wmic logicaldisk get deviceid, volumename, freespace, size
timeout /t 5
goto loop
```
该脚本使用了一些Windows命令行工具(`typeperf`和`wmic`)来获取各种系统资源的使用率。它会循环输出CPU使用率、内存使用率和磁盘使用率,并在每次输出后暂停5秒钟。如果您想要在输出中添加更多信息,您可以根据需要修改脚本。