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

[文本处理] (已解决)批处理怎么把文件夹名称中的数字之间的.号给替换成-号?

本帖最后由 itunesis 于 2020-4-3 19:31 编辑

只把数字之间的.号替换成-号,字母中间.号不作替换。

比如把文件夹名称A.B.C 12.13.14改成A.B.C 12-13-14

这个该怎么写?

大神来看看....

TOP

  1. @echo off
  2. powershell -version 2.0 -c "dir | Where-Object {$_.Attributes.ToString() -eq 'Directory'} | foreach { if ($_.Name -match '\d\.\d'){ Rename-Item $_.FullName ($_.Name -replace ('(?<=\d)\.(?=\d)','-'))}}"
  3. pause&exit
复制代码
先备份再用

TOP

本帖最后由 itunesis 于 2020-4-2 22:09 编辑

回复 3# went


   你好,这个代码能不能应用在子文件夹下,实现把子文件夹的名称也按这个格式改名?

TOP

  1. @echo off
  2. powershell -version 2.0 -c "dir -Recurse | Where-Object {$_.Attributes.ToString() -eq 'Directory'} | Sort-Object {$_.FullName.Split('\').Count} -Descending | foreach {if ($_.Name -match '\d\.\d'){Rename-Item  $_.FullName ($_.Name -replace ('(?<=\d)\.(?=\d)','-'))}}"
  3. pause&exit
复制代码
有点长

TOP

回复 5# went


    谢谢,测试好用

TOP

返回列表