Board logo

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

作者: iIoveyou    时间: 2021-12-26 11:00     标题: [已解决]求助批处理如何批量删除txt文件名字括号中的内容

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

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

本帖最后由 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
复制代码

作者: iIoveyou    时间: 2021-12-26 16:54

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

回复 2# qixiaobin0715


    显示 存在重名文件,或是找不到文件
作者: qixiaobin0715    时间: 2021-12-26 17:16

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

回复 4# qixiaobin0715


    按照Q-04修改了 显示命令语法不正确
作者: iIoveyou    时间: 2021-12-26 19:32

回复 4# qixiaobin0715


    我分批次修改就成功了 几百个一起就不行 不知道为什么
作者: iIoveyou    时间: 2021-12-26 19:45

回复 4# qixiaobin0715


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




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2