linux - 在 Linux 上安装 apache 静默避免 AH00558

标签 linux apache bash

我正在编写一个 bash 脚本,用于在 Linux (Ubuntu 14.04) 上安装 Apache2。

echo "Check if Apache is installed"

dpkg -p "apache2" > /dev/null 2>&1

if [ $? != 0 ]; then
    echo "Apache2 is not installed"
    echo "Apache2 installing"
    apt-get -q -y install apache2 > /dev/null
    echo "Apache2 installed"
else
    echo "Apache2 is already installed"
fi

脚本应该是无声的,只应显示“echo ”。但我得到:

Check if Apache is installed
Apache2 is not installed
Apache2 installing
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message
Apache2 installed

我知道如何在安装后修复 AH00558,但我想在安装时抑制警告。

解决方案是什么?

最佳答案

将 stderr 流重定向到 /dev/NULL

apt-get -q -y install apache2 2>&1 1> /dev/null

这将使您的 stdout 和 stderr 重定向到 /dev/null

关于linux - 在 Linux 上安装 apache 静默避免 AH00558,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27742083/

相关文章:

linux - Docker 无效标签值

php - 从其他3个Docker容器访问MySQL

regex - 提取包含一个或多个数字的文件名,然后将 cat 内容提取到输出文件

linux - 在 chroot 环境中启动程序会立即返回

regex - 在 bash/awk/sed 中用随机字母替换字母

linux - 从网络脚本中手动删除接口(interface)时,ifconfig不会更新

Linux 命令到 "link"文件

python - 如何设置我创建的任何 Vim 文件默认附加 #!/usr/bin/env python

node.js - 通过 SSL 使用 nodejs 和 apache 的 nginx 反向代理

apache - 如何在新的访问 Web 应用程序中使用反向代理后面的 Artifactory?