如何使用批处理脚本重命名在该文件夹中具有一定数量文件的多个文件夹?

艾姆

我对编程非常陌生,非常感谢您的帮助!

我有一个顶层目录,其中包含子文件夹,这些子文件夹中有文件。如果子文件夹包含少于4个或大于4个文件,我想在文件夹名称后添加字符串“ x”,例如foldername-> foldernamex 我该怎么做呢?

到目前为止,这是我的尝试:

for %%e in ('dir ^| find "File(s)"') do ( 
set cnt=%%e echo File count = %cnt% 
 if File count <4 do ren "%%e" "%%~nxf_x" 
)
foxidrive

这将dir命令和简短/b开关与仅文件开关一起使用,/a-d并将结果通过find /c /v ""命令传递给命令以计算文件数。

findstr用于查找确切的数字4,如果未检测到确切的数字,则4脚本将重命名文件夹并重新启动循环以处理嵌套的子目录(因为重命名文件夹时文件夹结构会更改)。

它未经测试-因此请先在带有某些文件夹副本的示例文件夹树上对其进行测试。

@echo off
:loop
for /f "delims=" %%a in ('dir /b /s /ad ^|findstr /v /i "x$" ') do (
  dir "%%a" /b /a-d 2>nul |find /c /v "" |findstr "^4$" >nul || (ren "%%a" "%%~nxax" & goto :loop)
)
pause

仅处理当前文件夹内的文件夹的简单代码。

@echo off
for /f "delims=" %%a in ('dir /b /s /ad ') do (
  dir "%%a" /b /a-d 2>nul |find /c /v "" |findstr "^4$" >nul || ren "%%a" "%%~nxax"
)
pause

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用批处理脚本重命名多个文件夹和子文件?

使用批处理脚本重命名文件夹

仅使用批处理脚本重命名文件夹

如何删除具有一定数量文件的文件夹?

如何使用批处理脚本将具有连续编号的多个文件夹中的多个文本合并?

编写批处理文件以重命名多个文件夹中的文件

如何使用批处理脚本压缩多个文件夹

重命名文件夹,并与现有文件夹合并(如果Powershell中存在该文件夹)

使用文本文件重命名文件夹中的批处理文件

如何重命名多个文件夹中的多个文件?

如何遍历一定数量的文件夹

如何使用一个命令重命名多个文件夹中的多个文件

批处理脚本-如何删除多个目录下的子文件夹(文件/文件夹)

仅使用正则表达式显示具有一定数量文件夹的文件

批处理 Windows - 如何创建一个循环来重命名不同文件夹中的许多文件?

批处理文件以重命名多个文件并移至文件夹

使用批处理脚本打开多个文件夹

批处理文件以重命名文件夹创建新文件夹

使用 OSX 终端在该文件夹内的第一个文件后重命名文件夹

在多个根文件夹中创建子文件夹所需的批处理或PowerShell脚本

遍历文件夹并使用文件夹名称顺序重命名每个文件夹中的所有文件

用于重命名子文件夹中文件的批处理脚本

使用脚本任务重命名文件夹中的多个 .docx 文件

如何在 Windows 中使用批处理重命名文件夹?

使用批处理重命名用户目录中的文件夹

如何使用累进编号重命名多个文件夹?

批处理文件重命名文件夹中的文件

批处理文件让用户选择文件夹中的文件然后重命名

使用批处理脚本检查文件夹中是否存在具有某些文件扩展名的文件