Я знаю, это звучит глупо, но на этой неделе у меня было грубое начало, и я не могу ясно мыслить.
Я пишу этот простой фрагмент кода, который, как предполагается, будет немного сложным позже. Однако я застрял возле этого простого оператора условия If.
Я написал код в VS на моем хосте Ubuntu, скопировал его в файл внутри контейнера docker и выполнил его.
Как видите, левая часть условия IF принимается как нулевое значение для сравнения. Где я ошибаюсь?
#!/bin/bash
someEquation()
{
cluster_state=`src/redis-cli -h 127.0.0.1 -p 36000 cluster info | grep cluster_state | awk -F':' '{print$2}'`
if [[ " ${cluster_state} " == "fail" ]]; then
echo "arr contains fail"
fi
}
someEquation
Вывод:
+ someEquation
++ src/redis-cli -h 127.0.0.1 -p 36000 cluster info
++ grep cluster_state
++ awk -F: '{print$2}'
+ cluster_state=$'fail\r'
== \f\a\i\l ]]