在DOS中使用echo而没有尾随空格

时间:2012-09-20 03:04:22

标签: echo dos space

我注意到当我使用echo在DOS中将某些内容打印到文件时,会在字符串中附加一个空格。我需要打印没有尾随空格的字符串。有没有办法做到这一点,或作为解决方法,从文件中删除尾随空格?

3 个答案:

答案 0 :(得分:19)

如果我正确理解了问题,你写了尾随空格。

而不是

echo string > file

使用

echo string>file

答案 1 :(得分:11)

假设您正在谈论cmd.exe而不是实际(相当过时)的MSDOS,有很多方法可以做到这一点,第一种方法是:

echo Here is some text>output.txt

但是我觉得有点不那么可读,因为我习惯于在命令行上清楚地描述'arguments'。

或者,没有什么可以阻止您更换命令行的顺序:

>output.txt echo Here is some text

这将允许您仍然分离参数,同时没有在输出文件中放置无关的空格。

事实上,我也经常将这种方法用于代码块:

>output.txt (
    echo hello
    echo goodbye
)

两个行写入文件。我发现在这种情况下它更好,因为你知道输出开始的时候,而不是去查看代码块的结尾。

答案 2 :(得分:0)

一些快速搜索为我带来了this link

看来你有多种选择。如果要使用脚本解析文件post-echo,可以考虑使用此VBScript

  Do While Not WScript.StdIn.AtEndOfStream
    WScript.Echo RTrim(WScript.StdIn.ReadLine)
  Loop

通过文件(通常是.txt)逐行循环,并执行RTrim,它会删除尾随空格。

干杯