在 Linux 上安装 apache 静默避免 AH00558
Install apache on Linux silent avoiding AH00558
我正在编写一个 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
脚本应该是无声的,只有 'echos' 应该显示。但我得到:
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
。
我找到了答案:重定向的顺序
适用于
apt-get -y install apache2 > /dev/null 2>&1
我正在编写一个 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
脚本应该是无声的,只有 'echos' 应该显示。但我得到:
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
。
我找到了答案:重定向的顺序
适用于
apt-get -y install apache2 > /dev/null 2>&1