重命名.bat- 0<1/*,:
- @echo off
- REM rename files with same extension name in order using numbers. e.g: 1.txt 2.txt 3.txt ...
- %windir%\system32\CScript.exe -e:jscript -nologo %0 %*
- exit /b
- */;
- function rename(e){var r,t,i,a={},c={};try{r=new Enumerator(fso.GetFolder(e).Files)}catch(e){return}for(;!r.atEnd();r.moveNext())if(t=r.item(),!c[t.Name]&&t.Path!==WScript.ScriptFullName)for(i=fso.GetExtensionName(t.Name),""!==i&&(i="."+i),a.hasOwnProperty(i)?++a[i]:a[i]=1;;)try{t.Name!==a[i]+i&&(t.Name=a[i]+i);break}catch(e){c[""+a[i]+i]=!0,++a[i]}}var fso=new ActiveXObject("Scripting.FileSystemObject"),folder,oArgs=WScript.Arguments;new ActiveXObject("WScript.Shell").CurrentDirectory=fso.GetParentFolderName(WScript.ScriptFullName);for(var i=0,l=oArgs.length;i<l;++i)rename(oArgs(i));0===l&&rename(fso.GetParentFolderName(WScript.ScriptFullName)),WScript.Echo("Mission complete."),WScript.Quit();
复制代码
|