我使用以下脚本将子文件夹中的(前缀)文件重命名为字符串"Application“。
pushd "%temporarydirectory%"
for /r %%j in (*) do (
rename "%%j" "Application - %%~nxj"
)
Popd例如,以下文件:
C:\临时宿舍\史密斯街10号
10001.doc
10002.doc改名为:
Application - 10001.doc
Application - 10002.doc我想要做的是更改脚本,以便将文件重命名(前缀),并使用包含它们的文件夹的名称。例如,以下文件:
C:\临时宿舍\史密斯街10号
10001.doc
10002.doc改名为:
10 Smith Street - 10001.doc
10 Smith Street - 10002.doc问候
乔治麦肯齐小猫
发布于 2014-09-18 10:02:56
pushd "%temporarydirectory%" && (
for /r /d %%a in (.) do for %%b in ("%%~fa\*") do (
echo ren "%%~fb" "%%~nxa - %%~nxb"
rem Magoo's tickle begin
echo "%%~nxb"|FINDSTR /l /c:"%%~nxa - " >NUL&IF ERRORLEVEL 1 echo ren "%%~fb" "%%~nxa - %%~nxb"
rem Magoo's tickle end
)
)对于每个文件夹,对于该文件夹中的每个文件,将文件重命名为文件夹的名称和扩展名,然后是文件的名称和扩展名。
(注意到rename / ren命令只是简单地回显以进行业务处理)
Magoo的挠痒:通过删除一个名为"10 Smith Street - 10001.doc“的文件将被重新命名为"10 Smith Street - 10 Smith Street - 10001.doc”的可能性来扩展建议的答案,如果该过程多次运行.
https://stackoverflow.com/questions/25909445
复制相似问题