【问题标题】:How to concatenate a string value at the head of a text file [duplicate]如何在文本文件的头部连接字符串值[重复]
【发布时间】:2020-12-10 06:36:32
【问题描述】:

真正挑剔的 Linux 问题。

我有一个文本文件,叫它 userec。我还有一个字符串变量 'var_a'。

我想连接字符串值,让我们在文本文件的顶部说“你好”。

类似

echo $var_a | cat usrec > file_out

它将 echo $var_a 的输出作为文件通过管道传输,并将其添加到 file_out 的顶部,然后添加 usrec 文件的其余部分。

因此,如果 userec 文件只包含“这是第二行”行,那么 file_out 的内容应该是:

howdy
This is the second line.

问题是这不是命令正在执行的操作,我不想创建一个变量来存储 var_a。这是从脚本运行的,我不想创建任何额外的 flack 以在之后进行清理。

我已经尝试了其他变体,但我的结果是空的。

谁能帮帮我?

【问题讨论】:

    标签: linux shell unix scripting concatenation


    【解决方案1】:

    如果你给cat 任何文件名,那么它不会自动读取它的标准输入。在这种情况下,您必须使用文件列表中的特殊参数- 来告诉它读取标准输入,以及将其包含在连接输出中的什么位置。由于显然您希望它在一开始就进行,那就是:

    echo $var_a | cat - usrec > file_out
    

    【讨论】:

    • 这就是我想要的!谢谢!
    【解决方案2】:

    我会这样做:

    echo $var_a > file_out
    cat usrec >> file_out
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-03-10
      • 2019-11-05
      • 2017-01-25
      • 2018-01-19
      • 2020-01-04
      • 1970-01-01
      • 1970-01-01
      • 2014-01-19
      相关资源
      最近更新 更多