标题: [文件操作] [已解决]批处理如何查看某个文件的大小并显示在DOS窗口上? [打印本页]
作者: wh1234567 时间: 2011-5-21 04:51 标题: [已解决]批处理如何查看某个文件的大小并显示在DOS窗口上?
请教批处理查看文件大小并显示在DOS窗口上,如何实现
例如效果:需要修改一下:- @echo off
- 这里是你帮我弄的代码
- echo 该文件大小为: MB
- pause
复制代码
作者: hfg1977 时间: 2011-5-21 07:12
变量扩展- @echo off
- set "testPath=%windir%\system32\ntoskrnl.exe"
- call:test1 "%testPath%"
- goto next
- :test1 xx
- echo %%1 = %1
- echo %%~1 = %~1 - 删除任何引号("),扩充 %%1
- echo %%~f1 = %~f1 - 将 %%1 扩充到一个完全合格的路径名
- echo %%~d1 = %~d1 - 仅将 %%1 扩充到一个驱动器号
- echo %%~p1 = %~p1 - 仅将 %%1 扩充到一个路径
- echo %%~n1 = %~n1 - 仅将 %%1 扩充到一个文件名
- echo %%~x1 = %~x1 - 仅将 %%1 扩充到一个文件扩展名
- echo %%~s1 = %~s1 - 扩充的路径只含有短名
- echo %%~a1 = %~a1 - 将 %%1 扩充到文件的文件属性
- echo %%~t1 = %~t1 - 将 %%1 扩充到文件的日期/时间
- echo %%~z1 = %~z1 - 将 %%1 扩充到文件的大小
- echo %%~$PATH:1 = %~$PATH:1 - 查找列在路径环境变量的目录,并将 %%1 扩充
- echo 到找到的第一个完全合格的名称。如果环境变量名
- echo 未被定义,或者没有找到文件,此组合键会扩充到
- echo 空字符串
-
- echo %%~dp1 = %~dp1 - 仅将 %%1 扩充到一个驱动器号和路径
- echo %%~nx1 = %~nx1 - 仅将 %%1 扩充到一个文件名和扩展名
- echo %%~fs1 = %~fs1 - 仅将 %%1 扩充到一个带有短名的完整路径名
- echo %%~dp$PATH:1 = %~dp$PATH:1 - 查找列在路径环境变量的目录,并将 %%1 扩充
- echo 到找到的第一个驱动器号和路径。
- echo %%~ftza1 = %~ftza1 - 将 %%1 扩充到类似输出线路的 D0R
- echo %%~a1 = %~a1
- echo\&goto:eof
- :next
- pause
- exit
复制代码
作者: cjiabing 时间: 2011-5-21 08:15
dir和for
比如:
for /r %%a in (*) do echo %%~za
作者: batman 时间: 2011-5-21 10:08
本帖最后由 batman 于 2011-5-21 10:17 编辑
批版:- @echo off&setlocal enabledelayedexpansion
- for /l %%a in (1,1,30) do set "kg=!kg! "
- for /r %%a in (*) do (
- set "str=%%~nxa%kg%"
- echo !str:~,20!%%~za
- )
- pause>nul
复制代码
vbs版:- For i = 1 To 30
- kg = kg & " "
- next
- Set fso = CreateObject("scripting.filesystemobject")
- Set ws = CreateObject("wscript.shell")
- For Each file In fso.GetFolder(ws.CurrentDirectory & "\").Files
- vbstr = vbstr & Left(file.Name & kg, 20) & file.Size & vbCrLf
- Next
- Set ws = Nothing
- Set fso = Nothing
- MsgBox vbstr
复制代码
作者: wh1234567 时间: 2011-5-21 15:16
要求是检测一个文件的大小而不是全部文件夹里的文件大小,并显示在DOS窗口上的那种
例如:
echo 该文件大小为: MB
pause
作者: CrLf 时间: 2011-5-21 15:25
dir也可以查看单文件的大小,只不过没有用for来得高效
作者: wh1234567 时间: 2011-5-22 02:09
@echo off
for /r %%a in (vf4备注.txt) do echo %%~za
echo 文件大小为 %%~za
pause
为什么错误?
作者: batman 时间: 2011-5-22 02:27
楼主你可以潜阵子水好好看看基础的东西不?你一直在发贴求助,却没有得到一点提高,自己好好想想问题出在哪里。。。
作者: wh1234567 时间: 2011-5-22 02:31
本帖最后由 wh1234567 于 2011-5-22 02:41 编辑
哎,版主,我好久没有时间学了,以前学了一点点忘了,现在需要用到可惜难住了,呵呵,你快给我一个例子吧,在线等
原文件名:1.txt
格式要求:
@echo off
你的代码
echo 文件大小为 KB
pause
最近每天都在等你们这几个高手帮我弄弄啊,
作者: applba 时间: 2011-5-22 06:35
这些都很基础的东西,几个小时就学会了的
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |