标题: [系统相关] 批处理怎样区分本地磁盘、映射网盘和移动硬盘? [打印本页]
作者: fitenzhou 时间: 2010-8-14 11:54 标题: 批处理怎样区分本地磁盘、映射网盘和移动硬盘?
請問本機磁盤,映射網絡盤和移動盤如何分開,我只需要操作本地磁盤顯示本地磁盤的空間- :disk
- echo.
- setlocal enabledelayedexpansion
- set /a num2=1024*1024
- for %%i in (C D E F K M N O P Q R S T U V W) do (
- set num1=0
- set num3_str=
- set num4=
- for /f "tokens=3" %%j in ('dir /-c %%i:\ 2^>nul') do set num1=%%j
- if not "!num1!"=="0" (
- call :loop
- for /f "delims=0 tokens=*" %%k in ("!num3_str!") do set num3_str=%%k
- echo %%i 盘剩余空间为 !num3_str! MB
-
- )
- )
- goto disk
- :loop
- set /a num3=%num4%%num1:~0,1%/%num2%
- set num3_str=%num3_str%%num3%
- set /a num4=%num4%%num1:~0,1%%%%num2%
- if %num4% equ 0 set num4=
- set num1=%num1:~1%
- if not "%num1%"=="" goto loop
- goto :eof
复制代码
請問如何修改
作者: 0428_hai 时间: 2010-8-14 17:43
- for /f "tokens=* delims=驱动器: " %%i in ('fsutil fsinfo drives^|more') do (
- for /f "delims= " %%j in ('fsutil fsinfo drivetype %%i^|find "固定驱动器"') do (
- echo 存在本地磁盘 %%j)
- )
复制代码
以上代码可以寻找本地磁盘
关于计算本地磁盘/文件夹/文件的容量大小可以不用这么麻烦就能实现吧。
作者: Batcher 时间: 2010-8-15 12:31 标题: 回复 2楼 的帖子
你有什么简单的方法,能否贴出来看看?
作者: 0428_hai 时间: 2010-8-15 21:20
原帖由 Batcher 于 2010-8-15 12:31 发表
你有什么简单的方法,能否贴出来看看?
以下代码用以获取本地磁盘空间-
- @echo off & title 查询磁盘空间/0428_hai/bathome.net/2010-08-15
- for /f "delims=驱动器:\ " %%a in ('fsutil fsinfo drives^|more') do (
- for /f "delims= " %%b in ('fsutil fsinfo drivetype %%a:^|find "固定驱动器"') do (
- echo %%b 盘的总容量(字节)
- wmic logicaldisk where "caption='%%b'" get size
- )
- )
- pause>nul
复制代码
获取文件的大小直接dir就可以
获取文件夹的大小也用dir/s就可以实现。当然,你要是这样来获取c:\Windows文件夹的大小是有点费劲
[ 本帖最后由 0428_hai 于 2010-8-15 21:22 编辑 ]
作者: Batcher 时间: 2010-8-15 21:34 标题: 回复 4楼 的帖子
你的代码无法满足楼主的需求,你再仔细看看?
欢迎光临 批处理之家 (http://bathome.net./) |
Powered by Discuz! 7.2 |