批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程
[批处理文件精品]批处理版照片整理器[批处理文件精品]纯批处理备份&还原驱动在线第三方下载
返回列表 发帖

[文件操作] 批处理如何批量删除文件夹名中的汉字后,重名文件夹内容合并

【新问题】如下:
现在如果是文件夹中含子文件夹,同时删除后面的汉字后,前面的字符串的文件夹名可能一样,目前楼下【版主】和【taofan712】提供的程序的处理结果是在第二个文件名加了一个“_1”来区分,现在希望把有删除汉字后文件夹名重复的时候,就把文件夹的内容合并,请问怎么修改?

另外【taofan712】提供的处理子文件夹按照12楼的建议 将  第三行,dir /b /ad改为dir /b /ad /s    闪屏后没有结果?


下面是原帖内容
帮忙修改一下:批量删除文件夹名中后面的中字
我现在比如有一批文件夹名字是   101-jx23-2.0002 奶茶12比例    或者   C01-jx23-2.0002奶茶比例     现在想删除后面的汉子
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "tokens=*" %%i in ('dir/ad/b *') do (
  4. call :hz "%%~ni"
  5. ren "%%i" "!fn!")
  6. goto :eof
  7. :hz
  8. set fn=%~1
  9. :begin
  10. echo !fn:~-1,4!|findstr /i "^[a-z0-9]*$">nul || (set fn=!fn:~,-1!&goto begin)
复制代码
这里删除的却是小数点后内容:.0002奶茶比例



请大侠们帮忙修改一下?

回复 3# 老刘1号[/


是要删除字符串后面的汉字。字符串里面包括字母,数字,-和.

TOP

回复 2# taofan712


   我测试一下!!

TOP

回复 4# taofan712


    您好,把小数点删除掉了??

TOP

需要保留住小数点,如C23-GH3421-34.00023 飞蝗芜湖      变成  C23-GH3421-34.00023

刚才的代码把34后面的小数点.也删除了

TOP

回复 2# taofan712


    OK,感谢感谢,测试成功,加了一个符号,可以保留住小数点符号了,想再问一下,如果是想处理当前文件加下子文件名修改一下哪里?

TOP

回复 13# 老刘1号


    大侠,我测试了,你的是删除的文件,不是文件夹,备用,说不一定我也用的上的

TOP

回复 12# taofan712


    这样改后测试不成功(想删除当前文件夹下的子文件夹的文件名中后面的汉字),把原来的文件夹名前面加上了路径,变成了【CUsersAdministratorDesktop批量挂接数据处理新建文件夹C01-2019-JX13-2.00031979-JX13-2.0016切勿】

谢谢!

TOP

回复 17# taofan712

测试没成功,提示:系统找不到指定文件

对当前同目录下的可执行,对于修改的文件夹下的子级文件夹还是不行,不知道原因在哪里?

TOP

要是再加上一个是否删除子文件夹名中汉字的提示就好了,y, 删除 or  N, 路过

谢谢版主及其他两位!!

TOP

现在如果是文件夹中含子文件夹,同时删除后面的汉字后,前面的字符串的文件夹名可能一样,程序的处理结果是在第二个文件名加了一个“_1”,我希望把有重复的时候,就把文件夹的内容合并,请问怎么修改?

按照12楼的建议 将  第三行,dir /b /ad改为dir /b /ad /s    闪屏后没有结果

TOP

回复 24# taofan712
   
您好,这么早给我回复,谢谢了。条件是当删除文件夹名中汉字的时候,考虑到了不会有同名文件(如果合并文件夹时有同名文件可考虑在文件后面加序号,文件夹不用),对于子文件夹的问题,一般情况不会有很多层2-3,可能程序上会是一样的,是的,存在一个先处理子文件夹,再父文件夹,目前我需要处理用到的是bat程序放的文件夹再下面一层文件夹,如文件夹名123,123里面有多个文件夹1-a、1-b,...在这一级放置bat处理程序,处理各个1-a、1-b,...下面的文件夹名(这个时候的文件夹内就是文件了),先写完,随后测试。再次谢谢!马上测试。看到你在群里研究这个了。


刚测试了,拖入需要处理的文件夹,回车闪屏了??请问怎么回事,我上传一个测试文件,还请taofan712检查一下!!

TOP

返回列表