linux - 仅当文件尚不存在时才将行附加到文件中

我需要将以下行添加到配置文件的末尾:

include "/configs/projectname.conf"

到一个名为 lighttpd.conf

的文件

我正在考虑使用 sed 来执行此操作,但我不知道如何操作。

如果该行不存在,我将如何只插入它?

最佳答案

保持简单:)

grep + echo 就足够了:

grep -qxF 'include "/configs/projectname.conf"' foo.bar || echo 'include "/configs/projectname.conf"' >> foo.bar
  • -q安静
  • -x 匹配整行
  • -F 模式是纯字符串
  • https://linux.die.net/man/1/grep

编辑: 合并了@cerin 和@thijs-wouters 的建议

https://stackoverflow.com/questions/3557037/

相关文章:

python - 如何检查字符串是否包含 Python 列表中的元素

linux - 哪个更好,curl 还是 wget?

python - 如何导入上面目录中的 Python 类?

vim - ^M 在 Vim 中每一行的末尾

python - 计算字符串中子字符串出现的次数

python - 在没有运行 X 服务器的情况下生成 matplotlib 图

linux - 如何使用 gcc/cmake 在 64 位 linux 机器上编译 32 位二进制文

python - 使用散点数据集生成热图

python - 在单行命令行中执行多行语句

linux - 计算纯文本文件中字符的出现次数