Board logo

标题: [文本处理] [已解决]批处理怎样去掉换行和空格? [打印本页]

作者: sunflowerr_88    时间: 2011-4-19 14:36     标题: [已解决]批处理怎样去掉换行和空格?

本帖最后由 sunflowerr_88 于 2011-4-27 16:32 编辑

原文件a.txt,大小约1000kb,主要内容如下:
  机床 - 机械结构床的切削加工是由刀具与工件之间的相对运动来实现的。机床的运动  原理可分为表面形成运动和辅助运动两类。 机床表面形成运动使工件获得所要求的表面形状和尺寸的运动,它包括主运动 、进给运动和切入运动。
<br><br>  ①主运动:从工件毛坯上剥离多  余材料时起主要作用的运动。主运动可以是  工件的旋转运动(如车削)、工件的直线运动(如在龙门刨床上刨削),刀具的旋转运动(如铣削和钻削)或刀具  的直线运动(如插削和拉削)。
<br><br>  ②进给运动:刀具和  工件待加工部。。。。。。。。。。。。。。。。。。。。。。

希望批处理后得到的内容:
文本只有一行,即开头要顶行,中间无空格

有劳高人啦~
作者: batman    时间: 2011-4-19 15:10

没考虑效率(总要比人手动快很多):
  1. @echo off
  2. (for /f "delims=" %%a in (a.txt) do (
  3.     for %%b in (%%a) do set /p=%%b<nul
  4. ))>tem
  5. del /q a.txt&ren tem a.txt
  6. start a.txt
复制代码

作者: sunflowerr_88    时间: 2011-4-19 19:29

2# batman
运行二楼的命令后,啥都没了,原文件成了个空文件了.
作者: sjminh    时间: 2011-4-19 21:21

二楼的代码,在XP下很正常,但在win7下貌似有问题
作者: Batcher    时间: 2011-4-19 21:40

  1. sed -i ":a;$!N;s/ \| //g;s/\n//;ta" a.txt
复制代码

作者: sunflowerr_88    时间: 2011-4-27 16:20

不好意思,是小弟我才识学浅,弄错了编码格式!二楼的代码运行非常完美,谢谢!
作者: pcl_test    时间: 2016-11-8 15:04

  1. //&cls&cscript -nologo -e:jscript "%~f0"<"文本.txt"&pause&exit
  2. WSH.echo(WSH.StdIn.ReadAll().replace(/[\s ]/g,''))
复制代码





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