Windows 批量:将文件夹重命名为里面文件的名称
Windows Batch: Rename a folder to the name of a file inside
我有大约 3000 个文件夹,每个文件夹中都有多个文件。每个文件夹包含一个 txt 文件,以及一些其他文件类型。文件夹名称是散列的,所以现在它是一堆随机数字。我想将每个文件夹重命名为与该文件夹内的 txt 文件相同的名称。例如:
123456/myfile.txt
应该变成:
myfile/myfile.txt
文件夹不包含任何子文件夹,如果有的话。
非常感谢任何帮助!
for /d %%a in (*) do (
for %%b in ("%%a\*.txt") do (
ECHO ren "%%a" "%%~nb"
)
)
使用 for /d
遍历您的文件夹,使用另一个 for
获取文件名(假设每个文件夹中只有一个 .txt 文件)。 %%~nb
只取名字不带扩展名)。
注意:故障排除后,删除 ECHO
以启用重命名命令。
我有大约 3000 个文件夹,每个文件夹中都有多个文件。每个文件夹包含一个 txt 文件,以及一些其他文件类型。文件夹名称是散列的,所以现在它是一堆随机数字。我想将每个文件夹重命名为与该文件夹内的 txt 文件相同的名称。例如:
123456/myfile.txt
应该变成:
myfile/myfile.txt
文件夹不包含任何子文件夹,如果有的话。 非常感谢任何帮助!
for /d %%a in (*) do (
for %%b in ("%%a\*.txt") do (
ECHO ren "%%a" "%%~nb"
)
)
使用 for /d
遍历您的文件夹,使用另一个 for
获取文件名(假设每个文件夹中只有一个 .txt 文件)。 %%~nb
只取名字不带扩展名)。
注意:故障排除后,删除 ECHO
以启用重命名命令。