使用bat清除文本文件中的空格

时间:2015-10-13 00:28:34

标签: batch-file whitespace removing-whitespace

我有以下批处理文件HERE

它搜索包含...的行

[/Script/MyGame.Mode]

然后它会创建一个新行并添加...

RedirectReferences=(PackageName="%Package%",PackageURLProtocol="%PackageURLProtocol%",PackageURL="%WebAddress%/%Package%%Ext%",PackageChecksum="")

除非原始文件在每行后面包含空格,否则它有效。如果没有空格,那就完美了。

在新文件中搜索,复制和写入新行之前,是否有一种简单的方法可以清除原始文件中的所有空格?

或者有更好的方法来做到这一点。对不起,我还不知道批处理文件。感谢您给予的任何帮助。

1 个答案:

答案 0 :(得分:0)

我明白了。在运行副本并添加新行之前,我能够使用下面的代码清除原始文件中的空格。

我更改了一些文件名,然后在我检查文件和编写新行之前运行了下面的代码。

我必须显示来自其他bat的一些代码,以显示文件名更改。一旦你将所有东西组合在一起,就可以了。

:CLEARWHITESPACE
for /F "eol=; tokens=1 delims=; " %%I in (Game.txt) do (
  set /a count+=1
  if !count! leq 10 echo %%I>>game.temp.txt
)

:SHOWLINE
set NewURL=RedirectReferences=(PackageName="%Package%",PackageURLProtocol="%PackageURLProtocol%",PackageURL="%WebAddress%/%Package%%Ext%",PackageChecksum="")

pause

:WRITENEW
set inputfile=game.temp.txt
set outputfile=game.temp2.txt
(for /f usebackq^ delims^=^ eol^=  %%a in ("%inputfile%") do (
   echo %%a 
   if "%%~a"=="[/Script/MyGame.Mode]" call echo %%NewURL%%  
))>>"%outputfile%"