标题: [文本处理] [已解决]批处理怎么把文件夹名称中[]号内的内容去除掉? [打印本页]
作者: itunesis 时间: 2020-4-28 23:35 标题: [已解决]批处理怎么把文件夹名称中[]号内的内容去除掉?
把文件夹名称中[]里面的内容和[]这个括号一起去除掉
比如把文件夹名[cctv]010-c重命名为010-c
请问大佬们要怎么写??
作者: ivor 时间: 2020-4-29 08:48
- powershell "dir | % {$_.MoveTo(($_.Name -replace '\[.*?\]',''))}"
复制代码
作者: itunesis 时间: 2020-4-29 11:29
回复 2# ivor
老哥有没有用bat能实现的代码?
作者: went 时间: 2020-4-29 12:28
folder是主文件夹- @echo off
- set "folder=C:\Users\lenovo\Desktop\1"
- for /d %%i in ("%folder%\[*]*") do (
- set "dir=%%~ni"
- call rename "%%i" "%%dir:*]=%%"
- )
- pause&exit
复制代码
作者: itunesis 时间: 2020-4-29 12:40
回复 4# went
你好,刚刚试了,这个还需要手动修改文件路径才能运行的是吗?
能不能改成是把这个bat文件放在哪个目录就自动运行应用在当前目录下文件夹的?
作者: went 时间: 2020-4-29 12:44
回复 5# itunesis
修改当前文件夹里的目录- @echo off
- for /d %%i in ("[*]*") do (
- set "dir=%%~ni"
- call rename "%%i" "%%dir:*]=%%"
- )
- pause&exit
复制代码
作者: itunesis 时间: 2020-4-29 13:07
本帖最后由 itunesis 于 2020-4-29 13:20 编辑
回复 6# went
谢谢,运行成功
现在发现个bug,能不能再看看。
作者: itunesis 时间: 2020-4-29 13:20
回复 6# went
你好,现在发现有个问题。
当[]括号内有英文句号.的时候,就会把句号.后面的内容全部清除掉了
比如[cct.v]010-cc 运行后名字变成了[cct
请问是什么原因?
作者: went 时间: 2020-4-29 13:48
回复 8# itunesis
第三行改为复制代码
符号.被看成拓展名了
这段代码只支持以开头的文件夹改名
作者: went 时间: 2020-4-29 13:49
回复 9# went
打个复制代码
怎么变成这个符号了
作者: itunesis 时间: 2020-4-29 13:58
回复 9# went
非常感谢,这次的没有这个问题了
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |