[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
  1. CD /D "%~dp0"
  2. @echo off
  3. for /f "tokens=1,* delims=-" %%i in ('dir /b/a-d/oN *.xls') do (
  4.     ren "%%~i-%%~j" "%%i.xls"
  5. )
  6. pause
复制代码
1

评分人数

TOP

  1. @echo off
  2. @for /f "delims=" %%i in ('dir /b *.xls *.xlsx') do (
  3. @ren2 -f "([^-]*)-.*%%~xi" "$1%%~xi"
  4. )
  5. pause
复制代码
ren2要好一些,方便操作不规则文件名按照规则重命名
http://bcn.bathome.net/tool/ren2.exe

TOP

不能,
*.xls和*,*会当成文件名和原来类型
-*和*或许也会被视为同一个

ren2 -f "([^-]*)-.*\.(xls|xlsx)" "$1.$2"

ren2.exe这个好用也容易理解,本站网友推荐用的,我也推荐下;
上面忘记说下载后放入C:\Windows\System32了

第一个()是非-的任意字节0个或多个;
-.*\.中的-是-字符,然后.*是任意字符0个或多个,最后\.就是.字符;
第二个()是xls和xlsx
替换部分的$1.$2就是前面第一个()加.和第二个()的内容。

最重要的发现居然支持零宽断言
(?=(要有|A))
(?!(不能有|A))

TOP

TOP

返回列表