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

[文本处理] [已解决]求批处理删除相同标题中的任意一个

[复制链接]
 楼主| 发表于 2019-6-19 14:27:36 | 显示全部楼层
回复 15# Batcher

Batcher大师,已上传,麻烦您,谢谢!
发表于 2019-6-19 15:00:55 | 显示全部楼层
说不清,道不明,第一行后面那么多空格,不算字符吗?
发表于 2019-6-19 15:04:12 | 显示全部楼层
  1. dir *.txt | forEach{$a=(type $_ -ReadCount 0); $a[0] = $a[0].Trim() -replace '^(.+)\1$', '$1'; sc ($_.BaseName + '.Log') -Value $a}
复制代码
  1. @for %%i in (*.txt) do sed -r "1s/^\s*(.+)\1\s*$/\1/" "%%i" > "%%~ni.Log"
复制代码
发表于 2019-6-19 15:45:12 | 显示全部楼层
回复 16# pwq


    你把这些txt文件第一行结尾的空格删掉,再执行代码,试试看能成功吗?
 楼主| 发表于 2019-6-19 17:37:48 | 显示全部楼层
回复 19# Batcher

Batcher大师,您好!照您说的做了,立马就成功了。看来是我无知,不知道文本文件第一行中文字符的后面还隐藏着空格符号,给我长知识了,真得谢谢您了。看来我许多的小说文本文件第一行中都存在这样的隐藏空格,靠我手工将它们一一删除是不可能的,有没有办法用批处理批量删除这些隐藏空格,再运行您先前的批处理删除相同标题中的任意一个,这样问题就圆满解决了。谢谢大师。麻烦您了。
发表于 2019-6-19 17:40:08 | 显示全部楼层
本帖最后由 xczxczxcz 于 2019-6-19 17:56 编辑

删除了

  1. 还是和谐一下,不讨论了。
复制代码
发表于 2019-6-19 18:45:58 | 显示全部楼层
回复 20# pwq


下载命令行工具 sed.exe 并放到txt文件所在目录
http://bcn.bathome.net/s/tool/index.html?key=sed

执行代码:清理首行结尾空格.bat
  1. @echo off
  2. sed -i "1s/ *$//" *.txt
复制代码
发表于 2019-6-19 21:09:18 | 显示全部楼层
目测是文本格式和BAT脚本格式 保存不一至导致
 楼主| 发表于 2019-6-19 21:35:49 | 显示全部楼层
回复 22# Batcher


  回复Batcher大师,您好:在您的指导下,我下载了命令行工具sed.exe,并下载了您的《清理首行行尾空格》批处理,经试用,非常好。删除了隐藏的首行行尾空格,我谢谢您了。实在不好意思,我在刚才的操作中发现还有许多文本文件第一行中的行首也有隐藏的空格,您能不能再给我写个《清理首行行首空格》批处理,这样一来,我的难题就彻底解决了。谢谢。
发表于 2019-6-19 23:33:13 | 显示全部楼层
回复 24# pwq
  1. sed -i "1s/^ *//; 1s/ *$//" *.txt
复制代码

评分

参与人数 1技术 +1 收起 理由
pwq + 1 乐于助人

查看全部评分

 楼主| 发表于 2019-6-20 09:59:22 | 显示全部楼层
回复 25# Batcher


    Batcher大师。您好。批处理我已下载并试运行,效果很好,太感谢您了。这次的批处理能同时删除行首空格和行尾空格,太完美了,这正合我的需要,再次谢谢您。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-19 06:16 , Processed in 0.017254 second(s), 7 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表