Проблеми з 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.