【问题标题】:bash, adding line after specific linebash,在特定行之后添加行
【发布时间】:2020-01-09 15:47:19
【问题描述】:

对于我实际创建的初始服务器设置脚本,我需要在特定文件中的特定行之后添加保存在变量中的行。

我想添加一行:

zend_extension = $phpextensiondir/ioncube_loader_lin_$phpextensionnumber.so

在以下行之后:

;realpath_cache_ttl = 120

在以下文件中:

  • /etc/php/$phpversionnumber/cli/php.ini
  • /etc/php/$phpversionnumber/cli/fpm.ini

我环顾四周,但找不到任何我理解的东西。实际上我是 bash 脚本的新手。 谁能解释一下?看来sed不是它的正确选择?

【问题讨论】:

  • 嗯,很棘手。您想将文字字符串 '$phpextensiondir' 和 '$phpextensionnumber' 放入文件中,还是希望将它们展开并将结果放入文件中?例如,文件是否应该包含美元符号和变量名 phpextensiondir 和 phpextensionnumber,或者这些东西应该被扩展然后插入,例如,如果 $phpextensiondir 是 "c:\php_new\ext" 而 $phpextensionnumber 是 5,那么文件将结束up 包含 zend_extension = c:\php_new\ext/ioncube_loader_lin_5.so。我假设 phpversionnumber 有一个 env 变量,例如 phpversionnumber=7.4?
  • 我需要将其展开并将结果放入文件中。这就是我实际拥有的,非常感谢帮助:pastebin.com/pHfKTVnu

标签: linux bash awk sed debian


【解决方案1】:
awk '{print} $0=="old line"{print "new line"}' file

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多