![Bash を使用して NGINX 構成を確認する方法は?](https://rvso.com/image/170289/Bash%20%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%A6%20NGINX%20%E6%A7%8B%E6%88%90%E3%82%92%E7%A2%BA%E8%AA%8D%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95%E3%81%AF%3F.png)
bash を使用して、NGINX 構成の正しさをプログラムで確認する必要があります。nginx -t コマンドの結果は変数に割り当てられ、条件によってサブ文字列 - 構文が正常であるかどうかを変数出力の結果と比較します。残念ながら、うまくいきません。何が間違っているのでしょうか?
CHECK="nginx -t"
SUB='syntax is ok'
if [[ "eval $CHECK" == *"$SUB"* ]]; then
echo "syntax is ok"
else
echo "syntax is not ok"
fi
ありがとう!
答え1
nginx -t
役に立つエラーコードが提供されるため、次のように簡単に使用できます。
if nginx -t > /dev/null 2>&1; then
echo "syntax is ok"
else
echo "syntax is not ok"
fi