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

[文本处理] [已解决]求助批处理如何批量删除txt文件名字括号中的内容

本帖最后由 iIoveyou 于 2022-1-11 19:32 编辑

在论坛里搜索了一个类似的问题
但是那个是doc文件!
我试了一下不好使,也不知道该怎么改
例如:
1.张三(李四).txt
2.王五(赵六).txt
删除括号内容,或者带着括号一起删除也可以

本帖最后由 qixiaobin0715 于 2021-12-26 17:06 编辑
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "delims=" %%i in ('dir /b /a-d *.txt') do (
  4.     set str=%%i
  5.     set "str=!str:(= (!"
  6.     set "str=!str:)=) !"
  7.     for %%j in (!str!) do (
  8.         set str1=%%j
  9.         if not "!str1:~,1!"=="(" if not "!str1:~-1!"==")" set str2=!str2!%%j
  10.     )
  11.     ren "%%i" "!str2!"
  12.     set str2=
  13. )
  14. pause
复制代码
2

评分人数

TOP

本帖最后由 iIoveyou 于 2021-12-26 16:58 编辑

回复 2# qixiaobin0715


    显示 存在重名文件,或是找不到文件

TOP

1.看一看删除括号及括号中的内容后,是否会有重名文件。
2.把批处理文件与需要处理的文件放在同一个目录中
3.请参考Q-04把bat文件保存为ANSI编码:
https://mp.weixin.qq.com/s/6lbb97qUOs1sTyKJfN0ZEQ
4.要注意中文英文的括号是不同的,上面代码是按中文括号处理的。我测试后,代码稍有修改。

TOP

回复 4# qixiaobin0715


    按照Q-04修改了 显示命令语法不正确

TOP

回复 4# qixiaobin0715


    我分批次修改就成功了 几百个一起就不行 不知道为什么

TOP

回复 4# qixiaobin0715


    可以了可以了 太感谢了!!谢谢谢谢!

TOP

返回列表