Board logo

标题: [文本处理] 批处理如何实现多个空格只保留1个 [打印本页]

作者: 55810982@qq.com    时间: 2020-7-21 17:44     标题: 批处理如何实现多个空格只保留1个

如图中内容,想把第一段内容到第二段内容的空格替换或者只保留为1个,求助大神怎么写。
作者: Batcher    时间: 2020-7-21 17:56

回复 1# 55810982@qq.com


执行代码之前,请先使用 Q-04 和 Q-05 的方法操作一下:
https://mp.weixin.qq.com/s/6lbb97qUOs1sTyKJfN0ZEQ
  1. @echo off
  2. (for /f "tokens=1-3" %%i in ('type "20200703.txt"') do (
  3.     echo,%%i %%j %%k
  4. ))>"20200703_new.txt"
复制代码

作者: 55810982@qq.com    时间: 2020-7-21 18:04

回复 2# Batcher


    输出的时候能否调整成这样:设置指定路径,使用原文件名称进行保存
作者: smss    时间: 2020-7-21 18:51

回复 3# 55810982@qq.com

改下第4行路径 如))>"c:\20200703.txt"
作者: Batcher    时间: 2020-7-21 18:56

回复 3# 55810982@qq.com


第4行改成这样:
))>"C:\指定路径\20200703.txt"
作者: 55810982@qq.com    时间: 2020-7-21 22:41

回复 5# Batcher


  之前没描述清楚,要处理的文件是多个,而且每天会增加,所以想把当前目录内的文件都处理一遍,然后按照原文件名称存储,或者覆盖也可以
作者: Batcher    时间: 2020-7-22 08:18

回复 6# 55810982@qq.com
  1. @echo off
  2. for /f "delims=" %%a in ('dir /b /a-d *.txt') do (
  3.     (for /f "tokens=1-3" %%i in ('type "%%a"') do (
  4.         echo,%%i %%j %%k
  5.     ))>"%%a.tmp"
  6.     move /y "%%a.tmp" "%%a"
  7. )
复制代码

作者: 55810982@qq.com    时间: 2020-7-22 09:08

回复 7# Batcher


    脚本OK ,非常感谢大神




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