如果存在则添加到文件,否则创建

时间:2009-08-11 21:04:01

标签: bash

我正在处理一个bash脚本,它需要占用一行并将其添加到文件的末尾(如果存在),如果它不存在,则使用该行创建该文件。

我到目前为止:

if [ ! -e /path/to/file ]; then
    echo $some_line > /path/to/file
else
    ???
fi

如何执行else中的操作(将文本行添加到现有文件中)?

2 个答案:

答案 0 :(得分:19)

使用两个角度:echo $some_line >> /path/to/file

答案 1 :(得分:12)

如果文件不存在,

> 会创建该文件;如果它存在,则覆盖它。

如果文件不存在,

>> 会创建该文件;如果它存在,则附加到它。

if [ ! -e /path/to/file ]; then
   echo $some_line > /path/to/file
else
   echo $some_line >> /path/to/file
fi