[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] BAT批量修改文件名,第二个点后数字加1,怎么做?

第二个点后数字加1,怎么做?谢谢啦
比如:  1.2  1.3   3.8   2.2.1   4.5.1  需要第一个“.”点后面的数字加1,成为新文件名如:1.3    1.4  3.9   2.3.1   4.6.1

  1. PowerShell "dir *.jpg | ?{$_.BaseName -match '^\d+(?:\.\d+)+$'} | sort -Desc {1*($_.BaseName -split '\.')[1]} | ren -NewName{$a=$_.Name -split '\.'; $a[1]=1+$a[1]; $a -join '.'}"
复制代码

TOP

版本号 0.9+0.1 当然是 0.10 或者 0.a 啦~

1楼的示意图就有 1.16

TOP

还是把前面的3位字符 转成泘点数加 0.1好。

TOP

如果是 1.9 再加 0.1 怎么办?

TOP

  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "tokens=1,2* delims=." %%a in ('dir /b /a-d *.*.jpg') do (
  4.     set /a n=%%b+1
  5.     ren "%%a.%%b.%%c" "%%a.!n!.%%c"
  6. )
复制代码
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

  1. @echo off
  2. set info=互助互利,支付宝扫码头像,感谢赞助
  3. rem 有问题,可加QQ956535081及时沟通
  4. title %info%
  5. cd /d "%~dp0"
  6. for /f "delims=" %%a in ('dir /a-d/b/s^|findstr "\\[^\.\\][^\.\\]*\.[0-9][0-9]*\.[^\\]*$"') do (
  7.     ren "%%a" "#.%%~nxa"
  8. )
  9. for /f "delims=" %%a in ('dir /a-d/b/s^|findstr "\\#\.[^\.\\][^\.\\]*\.[0-9][0-9]*\.[^\\]*$"') do (
  10.     for /f "tokens=1,2,3* delims=." %%b in ("%%~nxa") do (
  11.         set "file=%%a"
  12.         set "a=%%c"
  13.         set /a "b=%%d+1"
  14.         set "c=%%e"
  15.         setlocal enabledelayedexpansion
  16.         ren "!file!" "!a!.!b!.!c!"
  17.         endlocal
  18.     )
  19. )
  20. echo;%info%
  21. pause
复制代码
提供bat代写,为你省时省力省事,支付宝扫码头像支付
微信: unique2random

TOP

返回列表