标题: [文件操作] 【已解决】求助批处理文件夹重命名 [打印本页]
作者: lj670 时间: 3 天前 23:06 标题: 【已解决】求助批处理文件夹重命名
本帖最后由 lj670 于 2024-11-22 14:35 编辑
如何达成当前文件夹下运行,以其子文件夹名重命名孙文件夹名,例如当前文件夹中有a文件夹,a文件夹内有b文件夹,运行后,以a文件夹名重命名b文件夹,我有一个以当前文件夹名命名子文件夹的,可以参考- @echo off
- setlocal enabledelayedexpansion
-
- :: 获取当前目录下的第一个子文件夹
- for /d %%i in (*) do (
- set "firstFolder=%%i"
- goto :break
- )
- :break
-
- :: 获取父文件夹的名字
- for %%i in ("%cd%") do (
- set "parentFolderName=%%~nxi"
- )
-
- :: 重命名操作
- if defined firstFolder if defined parentFolderName (
- ren "%firstFolder%" "%parentFolderName%"
- ) else (
- echo No subfolder or parent folder name not found.
- )
-
- endlocal
复制代码
作者: flashercs 时间: 前天 09:07
- @echo off
- cd /d "%~dp0"
- for /r /d %%A in (*) do (
- for %%B in ("%%~fA\..") do (
- ren "%%~fA" "%%~nxB"
- )
- )
- pause
复制代码
作者: 77七 时间: 前天 12:52
- @echo off
- cd /d "%~dp0"
- for /d %%d in (*) do (
- for /d %%e in ("%%d\*") do (
- ren "%%e" "%%d"
- )
- )
- pause
复制代码
作者: lj670 时间: 昨天 14:34
回复 3# 77七
运行完美!谢谢
作者: lj670 时间: 昨天 14:42
回复 2# flashercs
脚本运行后,还是一样以当前文件夹名命名了a文件夹和b文件夹,不是以a文件夹名重命名b文件夹名,3楼回复已经解决了,谢谢!
作者: aloha20200628 时间: 昨天 16:09
回复 1# lj670
将 a\b\...\z 更名为 a\a\...\a,各代必须是 ‘独生子’,否则这种命名要求就会被系统报错...
作者: lj670 时间: 10 小时前
回复 6# aloha20200628
对呀,就是单个的,而且都是a\b\c这种的,a文件夹运行以b命名c,所以正好用,不会因同名报错。
欢迎光临 批处理之家 (http://bathome.net./) |
Powered by Discuz! 7.2 |