我必须重命名一堆文件。它们都在同一个文件夹中。我的想法是通过批处理脚本来做到这一点,但问题是,我必须“拆分”原始文件名并给它一个索引号。
例如:
Original Filename: XYZ SomeDocument.docx
New Filename: XYZ 01 SomeDocument.docx
有人知道我该怎么做吗?
我必须重命名一堆文件。它们都在同一个文件夹中。我的想法是通过批处理脚本来做到这一点,但问题是,我必须“拆分”原始文件名并给它一个索引号。
例如:
Original Filename: XYZ SomeDocument.docx
New Filename: XYZ 01 SomeDocument.docx
有人知道我该怎么做吗?
@echo off
setlocal EnableDelayedExpansion
set index=100
for /F "tokens=1*" %%a in ('dir /B /A-D') do (
set /A index+=1
ren "%%a %%b" "%%a !index:~-2! %%b"
)
我总是使用Python来完成这样的任务 :)
例如:
import os
DIR = r'C:\foo'
index = 1
for file_name in os.listdir(DIR):
old_path = os.path.join(DIR, file_name)
split = file_name.split("XYZ")
new_file_name = "XYZ %s %s" % (index, split[1].strip())
new_path = os.path.join(DIR, new_file_name)
os.rename(old_path, new_path)
index += 1