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

[文本处理] 【已解决】批处理如何给文件夹名称后添加里面所有文件的数量?

[复制链接]
发表于 2016-3-18 16:12:53 | 显示全部楼层 |阅读模式
本帖最后由 wzf1024 于 2016-3-18 21:56 编辑

有很多文件夹,需要在文件夹名称后面加上该文件夹下文件的数量,文件夹位置不变,如文件夹1下有子文件夹2和3及一个文件,子文件夹2下有两个文件,子文件夹3下有3个文件,操作后为:
文件夹1-6
文件夹2-2
文件夹3-3
……
哪位大侠帮忙,我是菜鸟啥都不懂
发表于 2016-3-18 17:48:54 | 显示全部楼层
本帖最后由 happy886rr 于 2016-3-18 18:16 编辑

回复 1# wzf1024
论坛里教程太多了,对于这些简单问题。稍微学学就能自己解决的。
  1. @echo off&setlocal enabledelayedexpansion
  2. for /f "delims=" %%a in ('dir /ad /b /s^|sort /r') do (
  3.         set j=0
  4.         for /f "delims=" %%b in ('CD "%%a" ^& dir /a-d /b /s 2^>nul') do (set /a j+=1)
  5.         ren "%%a" "%%~na-!j!"
  6. )
  7. echo 执行完毕!
  8. pause>nul
复制代码

评分

参与人数 2技术 +2 收起 理由
wzf1024 + 1 乐于助人.正在努力学习中……
codegay + 1 1

查看全部评分

发表于 2016-3-18 22:06:07 | 显示全部楼层
  1. //&cls&@cscript -nologo -e:jscript "%~f0"&exit
  2. var FSO  = new ActiveXObject('Scripting.FileSystemObject');
  3. var Folder = new Enumerator(FSO.GetFolder(FSO.GetFile(WScript.ScriptFullName).ParentFolder.Path).SubFolders);
  4. while (!Folder.atEnd()) {
  5.     FileCount(Folder.item());
  6.     Folder.moveNext();
  7. }

  8. function FileCount(FolderName) {
  9.     var n = 0;
  10.     var Folder_ = FSO.GetFolder(FolderName);
  11.     var Files = new Enumerator(Folder_.Files);
  12.     while (!Files.atEnd()) {
  13.         n += 1;
  14.         Files.moveNext();
  15.     }
  16.     Folder_.Name = Folder_.Name + '-' + n;
  17. }
复制代码
练手
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-18 01:40 , Processed in 0.014420 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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