11

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

4

3 回答 3

20

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

代替

echo string > file

采用

echo string>file
于 2012-09-20T03:06:42.393 回答
11

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

echo Here is some text>output.txt

但我发现这有点不可读,因为我习惯于在命令行上清楚地描述“参数”。

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

>output.txt echo Here is some text

这将允许您仍然分隔参数,同时不会在输出文件中放置多余的空格。

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

>output.txt (
    echo hello
    echo goodbye
)

这会将行都写入文件。在这种情况下,我发现它更可取,因为您一开始就知道输出的去向,而不必去查看代码块的末尾。

于 2012-09-20T03:13:04.247 回答
0

一些快速搜索给我带来了这个链接

看来您有多种选择。如果您想使用脚本解析文件 post-echo,您可以考虑这个 VBScript

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

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

干杯

于 2012-09-20T03:11:32.967 回答