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
จะถูกเก็บไว้ในการทดสอบ $ แต่ข้อความนี้จะถูกส่งออกไปยังคอนโซลแทน
ฉันไม่แน่ใจว่าเกิดอะไรขึ้น ใครมีความคิดเห็นบ้าง
(Ubuntu 14.04.1)
ฉันคิดว่าทุบตีรุ่นที่ใหม่กว่าจัดการที่ ดูเหมือนว่าจะทำงานในการทดสอบของฉันต่อไป
—
DarkNeuron
ถ้าอย่างนั้นดีสำหรับคุณ :-) ฉันมักจะชอบตาข่ายความปลอดภัยเพิ่มเติมถ้าไม่มีอะไรอื่นที่จะรักษาสติของฉันเมื่อดูรหัสในภายหลัง ...
—
CVn
if [[ -z $test ]]
จะขยายเป็นเกือบแน่นอนif [[ -z ]]
เมื่อ$test
ว่างเปล่าซึ่งดูเหมือนว่าจะทำให้เกิดเงื่อนไขif [[ -z "$test" ]] ; then
เพื่อป้องกันการนี้เพียงแค่ใส่ตัวแปรในคำพูด: