【问题标题】:How do I write to a file from a function in terminal如何从终端中的函数写入文件
【发布时间】:2011-12-26 14:23:54
【问题描述】:

我想在我的 .bashrc 文件中写一个函数,比如:

function appendToFile {
  vi .file $1
}

$1 是内容。我知道:

program > path/to/file

格式化,但它不是程序,我只想将特定的东西写入文件。

另外,重要,是我不想覆盖文件,我想追加到文件

【问题讨论】:

    标签: bash scripting terminal


    【解决方案1】:

    echo $1 > /path/to/file 怎么样?

    【讨论】:

    • 只是检查,是覆盖还是追加?
    • -1:当作者特别要求append时覆盖。
    【解决方案2】:
    echo "$1" >> file
    

    可能是你的方式。 >> 追加。

    【讨论】:

      【解决方案3】:

      如果内容是多行的或者需要包含变量,appendToFile 应该从标准输入中读取:

      #!/bin/bash
      function appendToFile {
        cat >> "$1"
      }
      
      somevar="Hi, i'm some variable"
      
      appendToFile ./test << EOF
      multiline 1
      multiline 2
      $somevar
      EOF
      
      appendToFile ./test <<< "One line only"
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-07-28
        • 1970-01-01
        • 1970-01-01
        • 2021-09-22
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多