【问题标题】:How to append an empty line in a text file using the command line?如何使用命令行在文本文件中追加一个空行?
【发布时间】:2011-02-03 00:50:19
【问题描述】:

如何使用命令行在文本文件中追加一个空行?

 echo hi >a.txt
    echo >>a.txt
    echo arun >>a.txt

输出如下:

hi
echo on
arun

那么我怎么能附加一个空行呢?我希望它是这样的:

hi

arun

当我在代码@echo off 上添加这一行时,它显示echo off。怎么办?

【问题讨论】:

  • 我添加了 windows 标签,因为这是我能想到的唯一一个平台,它会说“echo on”以响应不合格的“echo”命令。提问时最好包含平台和/或语言,以便合适的人看到您的问题。另外,使用 010101 按钮来格式化您的代码。

标签: windows command-line scripting


【解决方案1】:

在 Windows 命令提示符下,尝试:

echo.>> a.txt

注意echo.之间没有空格;如果有,它将输出一个点。 .>>之间也没有空格;介于两者之间的任何内容都会输出到文件中,甚至是空白字符。

the Microsoft documentation for echo

如果这是在 bash 中,那么您的第一次尝试是正确的:

echo >> a.txt

但在 Windows 中,不合格的 echo 命令会测试是否有命令提示符(echo off 关闭提示符,echo on 将其重新打开)。

【讨论】:

  • 嗯,这在 ubuntu 中对我不起作用,识别回声。作为一个未找到的命令。
  • @Tchalvak:就我们从问题中的线索来看,这是一个 Windows 问题。
  • 啊,很公平。多么烦人的命令实现。
  • 点和重定向操作符之间不能有空格。否则,这将输出一个空格,后跟一个换行符。对于不完全为空的“空行”的一些定义。
  • 谢谢,@Johannes。我看的不够仔细。
【解决方案2】:

在 Windows 提示符下:

echo. >> a.txt

在 BASH 提示中:

echo >> a.txt

(默认情况下,Echo 发送一个尾随换行符)

-n 不输出尾随的换行符

【讨论】:

    【解决方案3】:

    应该可以用一个简单的

    echo hi\n >> a.txt
    

    【讨论】:

    • 这会将字符串文字“\n”输出到文件中
    猜你喜欢
    • 2011-06-26
    • 2014-11-22
    • 2013-11-21
    • 2023-03-26
    • 1970-01-01
    • 2012-04-02
    • 2020-05-24
    • 2010-12-14
    • 1970-01-01
    相关资源
    最近更新 更多