标题: [文件操作] [已解决]批处理如何在根文件夹批量删除子文件夹里TXT文本里某些内容? [打印本页]
作者: Lekton 时间: 2021-11-11 00:15 标题: [已解决]批处理如何在根文件夹批量删除子文件夹里TXT文本里某些内容?
本帖最后由 Lekton 于 2021-11-11 16:59 编辑
TXT文本内容:
买家评价:衣服很好,面料舒服,大小合适,颜色很正,加绒,摸着很舒服,好看,洋气
评价时间:2020-10-22 15:41:58
买家追评:衣服挺好看,质量不错宝贝上身效果很好,宝贝太喜欢了
追评时间:2020-10-22 16:04:19
我要删除掉固定的“买家评价:”、“评价时间:”、“买家追评:”、“追评时间:”,还有日期都要删掉。所有的子文件夹都有固定的这些文字
作者: Lekton 时间: 2021-11-11 00:26
本帖最后由 Lekton 于 2021-11-11 00:31 编辑
由于无法上传附件,只能手动描述。
文本的位置位于:根文件夹 → 子文件夹 → 子子文件夹(TXT所在位置)
然后想要在 根文件夹 就把不想要的内容都删掉
作者: qixiaobin0715 时间: 2021-11-11 09:06
你想列出目录的结构,可以用tree /f命令。
不知我理解的对不对:删除行首冒号及前面的文字,删除日期,保留评价内容及时间。- @echo off
- for /f "delims=" %%i in ('dir /b /s /a-d *.txt') do (
- (for /f "tokens=1,2* delims=: " %%a in ('type "%%i"') do if "%%c"=="" (echo,%%b) else echo,%%c)>%%~nxi
- move "%%~nxi" "%%i">nul
- )
- pause
复制代码
作者: qixiaobin0715 时间: 2021-11-11 09:12
运行代码前,请备份好源文件。
作者: Lekton 时间: 2021-11-11 15:17
回复 3# qixiaobin0715
时间也要删除掉,只留下评语。UTF-8文档改成bat运行代码后,文字变成火星文了。把文档储存成ANSI,再改成bat时,只剩下时间没有文字。
作者: qixiaobin0715 时间: 2021-11-11 15:21
回复 5# Lekton
你把其中一个源文本传到百度网盘,便于测试用。
作者: Lekton 时间: 2021-11-11 15:43
回复 6# qixiaobin0715
链接:https://pan.baidu.com/s/1a73mwuWaM2xCzNtA6QMUtQ
提取码:xqj7
作者: Lekton 时间: 2021-11-11 15:43
回复 6# qixiaobin0715
链接:https://pan.baidu.com/s/1a73mwuWaM2xCzNtA6QMUtQ
提取码:xqj7
压缩包已传网盘
作者: qixiaobin0715 时间: 2021-11-11 16:41
回复 8# Lekton
将批处理保存为UTF-8无签名编码,放在AAA文件夹中:- @echo off &@cls&chcp>nul 65001
- for /f "delims=" %%i in ('dir /b /s /a-d *.txt') do (
- (for /f "tokens=2 delims=:" %%a in ('findstr /r /v "\-.*\-" "%%i"') do (
- echo,%%a
- ))>"%%~nxi"
- move "%%~nxi" "%%i">nul
- )
- pause
复制代码
作者: Lekton 时间: 2021-11-11 16:58
回复 9# qixiaobin0715
感谢大神,万分感谢,已解决
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |