找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 23487|回复: 2

[文本处理] 【有难度的批处理】某个固定的文件夹如何获取里面当天生成的文件大小

[复制链接]
发表于 2018-5-24 21:22:23 | 显示全部楼层 |阅读模式
本帖最后由 2403092835 于 2018-5-24 21:24 编辑

百度查阅了很多资料,没有相关的案例,具体想实现如下功能:
有个固定的文件夹,里面每天都会生成备份文件,生成的文件数量不定,名字也不定;现在想获取里面当天生成的文件名,并且获取总文件的大小,以G为单位
请问这个批处理如何实现,提前感谢
发表于 2018-5-25 09:05:51 | 显示全部楼层
本帖最后由 yhcfsr 于 2018-5-25 21:19 编辑

powershell
  1. $cd='d:\test';
  2. $files=(dir $cd -r -force |?{$_.CreationTime.Date -eq (Get-Date).Date});
  3. foreach($file in $files){
  4. $file.fullname;
  5. $size+=$file.Length;
  6. };
  7. '今天创建的文件共: '+"{0:n2}" -f ($size/1GB)+' GB';
复制代码
BAT+POWERSHELL
  1. @echo off
  2. powershell ^
  3. $cd='d:\test';^
  4. $size=$null;^
  5. $files=(dir $cd -r -force ^|?{$_.CreationTime.Date -eq (Get-Date).Date});^
  6. foreach($file in $files){^
  7. $file.fullname;^
  8. $size+=$file.Length;^
  9. };^
  10. '今天创建的文件共: '+'{0:n2}' -f ($size/1GB)+' GB';^
  11. exit
  12. pause
复制代码
回复3楼
  1. @echo off
  2. set "sum=0"&set "sd=d:\test"
  3. cd /d "%sd%"
  4. for /r %%a in (*) do (
  5.         for /f "delims= " %%b in ('dir /a-d/tc "%%a"^|findstr /ri "%date%"') do (
  6.                 echo;%%a
  7.                 call,set "sum=%%sum%%+%%~za"
  8.         )
  9. )
  10. set "command=powershell -c '{0:n2}' -f ((%sum%^)/1GB^)"
  11. for /f "delims= " %%a in ('%command%') do echo;今天创建的文件共: %%a GB
  12. pause
复制代码
 楼主| 发表于 2018-5-25 19:41:56 | 显示全部楼层
回复 2# yhcfsr


非常感谢你,朋友。
代码简洁明了,实际测试完美运行。
但是我的其他实现方式都是用批处理,我想把powershell的输出参数传给批处理,类似于如下代码:
  1. @echo off
  2. powershell ^
  3. $cd='d:\test';^
  4. $size=$null;^
  5. $files=(dir $cd -r -force ^|?{$_.CreationTime.Date -eq (Get-Date).Date});^
  6. foreach($file in $files){^
  7. $file.fullname;^
  8. $size+=$file.Length;^
  9. };^
  10. '今天创建的文件共: '+'{0:n2}' -f ($size/1GB)+' GB';^
  11. exit

  12. echo %file.fullname%
  13. echo %size%
  14. pause
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-18 06:20 , Processed in 0.017750 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表