[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

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

本帖最后由 wzf1024 于 2016-3-18 21:56 编辑

有很多文件夹,需要在文件夹名称后面加上该文件夹下文件的数量,文件夹位置不变,如文件夹1下有子文件夹2和3及一个文件,子文件夹2下有两个文件,子文件夹3下有3个文件,操作后为:
文件夹1-6
文件夹2-2
文件夹3-3
……
哪位大侠帮忙,我是菜鸟啥都不懂

本帖最后由 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

评分人数

    • wzf1024: 乐于助人.正在努力学习中……技术 + 1
    • codegay: 1技术 + 1

TOP

  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. }
复制代码
练手

TOP

返回列表