Возникли проблемы с redis-cli. Я хочу проверить, redisотказано ли соединение с (сервер отключен), через BASH.
Простой тест
#!/bin/bash
test=$(redis-cli exit) #exit out of the "not connected console"
if [[ -z $test ]] ; then
echo "I'm empty :("
fi
Я ожидаю, Could not connect to Redis at 127.0.0.1:6379: Connection refusedчто будет храниться в $ test, но этот текст вместо этого выводится на консоль.
Я не уверен, что происходит. У кого-нибудь есть идеи?
(Ubuntu 14.04.1)
if [[ -z $test ]]почти наверняка расширится до того,if [[ -z ]]когда$testстанет пустым, что, вероятно, нарушит условное. Для защиты от этого, просто поместите переменную в кавычки:if [[ -z "$test" ]] ; then.