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

[文件操作] [已解决]批处理如何在根文件夹批量删除子文件夹里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:31 编辑

由于无法上传附件,只能手动描述。
文本的位置位于:根文件夹 → 子文件夹 → 子子文件夹(TXT所在位置)
然后想要在 根文件夹 就把不想要的内容都删掉

TOP

你想列出目录的结构,可以用tree /f命令。
不知我理解的对不对:删除行首冒号及前面的文字,删除日期,保留评价内容及时间。
  1. @echo off
  2. for /f "delims=" %%i in ('dir /b /s /a-d *.txt') do (
  3.     (for /f "tokens=1,2* delims=: " %%a in ('type "%%i"') do if "%%c"=="" (echo,%%b) else echo,%%c)>%%~nxi
  4.     move "%%~nxi" "%%i">nul
  5. )
  6. pause
复制代码

TOP

运行代码前,请备份好源文件。

TOP

回复 3# qixiaobin0715


    时间也要删除掉,只留下评语。UTF-8文档改成bat运行代码后,文字变成火星文了。把文档储存成ANSI,再改成bat时,只剩下时间没有文字。

TOP

回复 5# Lekton
你把其中一个源文本传到百度网盘,便于测试用。

TOP

回复 6# qixiaobin0715


    链接:https://pan.baidu.com/s/1a73mwuWaM2xCzNtA6QMUtQ
提取码:xqj7

TOP

回复 6# qixiaobin0715


    链接:https://pan.baidu.com/s/1a73mwuWaM2xCzNtA6QMUtQ
提取码:xqj7

压缩包已传网盘

TOP

回复 8# Lekton
将批处理保存为UTF-8无签名编码,放在AAA文件夹中:
  1. @echo off &@cls&chcp>nul 65001
  2. for /f "delims=" %%i in ('dir /b /s /a-d *.txt') do (
  3.     (for /f "tokens=2 delims=:" %%a in ('findstr /r /v "\-.*\-" "%%i"') do (
  4.         echo,%%a
  5.     ))>"%%~nxi"
  6.     move "%%~nxi" "%%i">nul
  7. )
  8. pause
复制代码

TOP

回复 9# qixiaobin0715


    感谢大神,万分感谢,已解决

TOP

返回列表