能否在帮我做一个批量处理同一个文件夹里任何后缀的文件名字前面加首汉字的拼音首字母的批处理?
如何批量在文件名前面增加相同字符?
@for /f "tokens=*" %%i in ('dir/b *.doc') do @ren "*.doc" "#%%i"
如何批量以文件夹的名字命名该文件夹下的文件
在札记一文件夹下建一个txt文档,将以下内容复制其中:
@echo off
setlocal enabledelayedexpansion
set T=札记一
set a=0
for /f "delims=" %%i in ('dir /b *.txt') do (
for /f "tokens=1,2* delims=-" %%d in ('dir /b "%%i"') do (
set /a a+=1
set oldn="%%i"
set newn0=%%~nd
set newn1="!T!!a!.txt"
if not !oldn!==!newn1! (
if exist !newn1! (call :anum) else (
ren !oldn! !newn1!
)
)
)
)
goto :end
:anum
set /a a+=1
set newn2="!T!!a!.txt"
if exist !newn2! (goto :anum) else (
ren !oldn! !newn2!
)
goto :eof
:end
goto :eof
将后缀txt改为bat,运行。
在札记二文件夹下同样建一个txt文档,将上述复制内容中的T=札记一改为T=札记二即可。
怎么利用bat批量修改多个文件名的部分字符?
@echo off
set #=q&set/ax=0x53b7e0b4
title Any question +%#%%#% %x%
cd /d "%~dp0"
for /f "delims=" %%a in ('dir /a-d/b "*3月(1)-Sponsored Products*"') do (
set "name=%%~nxa"
set "file=%%a"
setlocal enabledelayedexpansion
echo;"!file!" --^> "!name:3月(1)-Sponsored Products= !"
ren "!file!" "!name:3月(1)-Sponsored Products= !"
endlocal
)
echo;Any question +%#%%#% %x%
pause
如何批量在多个文件前面添加名称或者数字?
推荐用Replace Pioneer,可以在原名字之前加字符。
详细操作:
1. 选择Tools->Batch Runner 菜单。
2. 点击"Pick Files",按住shift或control选择多个文件,如果文件太多,比如几百个文件最好用"Search Files"按钮,在目录中搜所需要的文件。
3. 把set output filename 中的${FILENAME}改为: 相声精选${FILENAME}
4. 点击Rename,完成重命名。
注:把set output filename 中的${FILENAME}做以下修改,还可以实现更多灵活的重命名:
#.jpg --- 表示 1.jpg, 2.jpg, ...
##.jpg --- 表示 01.jpg, 02.jpg, ...
###.jpg --- 表示 001.jpg, 002.jpg, ...
...
@.jpg --- 表示 a.jpg, b.jpg, ...
@@.jpg --- 表示 aa.jpg, ab.jpg, ... zz.jpg
@@@.jpg --- 表示 aaa.jpg, aab.jpg, ... zzz.jpg
${BASE}###.jpg --- 表示在原名后面加三位序号
${BASE}{1,3}.jpg --- 表示取原名的前三位字符
${BASE}{-3,-1}.jpg --- 表示取原名的后三位字符
${BASE}{4,-4}.jpg --- 表示原名从第4个字符到倒数第4个字符
${BASE}{replace,'a','b'}.jpg ---表示把原名里的a替换成b
${BASE}{replace,'_',''}.jpg ---表示把原名里的_去掉
... ...