sed php.ini 内存限制

sed php.ini 内存限制

以下方法非常有效:

phpmemory_limit=256M #or what ever you want it set to
sed -i 's/memory_limit = 16M/memory_limit = '${phpmemory_limit}'/' /etc/php5/apache2/php.ini

如果将 memory_limit 设置为 16M,但我发现在某些发行版中它默认不是 16M,而是默认为 32M。所以我的问题是,如何让 SED 考虑到这一点并将数字替换为 ${phpmemory_limit}?

答案1

您可以使用正则表达式-例如:

phpmemory_limit=256M #or what ever you want it set to
sed -i 's/memory_limit = .*/memory_limit = '${phpmemory_limit}'/' /etc/php5/apache2/php.ini

答案2

假如说:

  • 值始终以 Mb 为单位指定。
  • 您希望保留尾随的评论。
  • 您不想修改任何已注释的事件。
  • phpmemory_limit仅包含一个整数。

    sed -ri 's/^(memory_limit = )[0-9]+(M.*)$/\1'${phpmemory_limit}'\2/' /etc/php5/apache2/php.ini
    

这使用..

  • 反向引用以缩短正则表达式并保留注释。
  • sed扩展的正则表达式支持。
  • 按该顺序指定缩短的选项很重要,否则它将创建带有文件扩展名的备份r

相关内容