求一个批处理

要能生成右键菜单,不再使用时可以卸载。在须处理的文件夹右键调用批处理,文件夹内的文件随机字母加数字批量重命名,不改扩展名。文件名不少于15个字符,代码尽量要简洁处理速度快,谢谢!
文件名要求可以自己设定上限值与下限值

应要求已更新
以下代码保存为 安装右键更名.bat

---------------------------增强更新代码---------------------

@echo off
title [右键重命名文件程序]
mode con: cols=58 lines=12
color 6f
if not exist %systemroot%\batchRen.bat ( goto install) else ( goto next)
:install
echo.&echo 正在安装右键功能....&echo.
set "mypath=%systemroot%\batchRen.bat"
cd.>%mypath%
>>%mypath% echo @echo off
>>%mypath% echo title [右键重命名文件程序]
>>%mypath% echo mode con: cols=58 lines=40
>>%mypath% echo color 6f
>>%mypath% echo echo [code by xieqingx 20100405 blog: hi.baidu.com/xieqingx]
>>%mypath% echo echo.^&echo.^&set /p wn= 请输入重命名后的文件名字符长度:
>>%mypath% echo cls
>>%mypath% echo cd /d %%1
>>%mypath% echo set c=0123456789abcdefghijklmnopqrstuvwxyz
>>%mypath% echo for /f "delims=" %%%%a in ('dir /b/a-d') do (
>>%mypath% echo set "a=%%%%a"
>>%mypath% echo setlocal enabledelayedexpansion
>>%mypath% echo echo.正在重命名"!a!"文件
>>%mypath% echo for /l %%%%i in (1,1,%%wn%%) do set /a n=!random!%%%%35^&call set i=!i!%%%%c:~!n!,1%%%%
>>%mypath% echo ren "!a!" "!i!%%%%~xa"
>>%mypath% echo echo.已更名为"!i!%%%%~xa"
>>%mypath% echo echo.-----------------------------------------------
>>%mypath% echo endlocal)
>>%mypath% echo echo 操作完成,按任意键关闭^&pause ^>nul^&goto :eof
reg add "HKCR\Directory\shell\batchRen" /ve /d "指定目录中所有子文件批量改名(&R)" /f >nul
reg add "HKCR\Directory\shell\batchRen\command" /ve /d "%systemroot%\batchRen.bat %%1" /f >nul
echo 添加完毕,现在你可以使用右键菜单,请用右键操作文件夹,&echo.
echo 选择 "指定目录中所有子文件批量改名(&R)" 的菜单项&echo.
echo 可以对你右键指定目录中的子文件来进行重命名操作了&echo.
echo 安装成功,正在关闭窗口....
ping -n 8 127.1 >nul&exit
:next
echo.
echo 你要卸载此右键菜单功能吗?
echo.
echo Y、是的,我不想要了
echo.
echo N、不,我要退出程序
echo.
set choice=
set /p choice= 请输入指定功能代码(Y/N):
echo.
if not defined choice cls&goto next
set "choice=%choice:~0,1%"
if /i "%choice%"=="N" ( exit ) else (if /i "%choice%"=="Y" ( goto unload) else ( cls&&echo.&echo.&echo.&echo.&echo.&echo 请输入正确选项&ping -n 4 127.1>nul&cls&&goto :next))
:unload
del %systemroot%\batchRen.bat
reg delete "HKCR\Directory\shell\batchRen" /f >nul
echo 卸载成功,正在关闭窗口....
ping -n 4 127.1 >nul&exit
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-04-05
win内置程序做不到巴
第2个回答  2010-04-05
我也是 开学习的 哈哈
相似回答
大家正在搜