Вы цитируете всю строку "$s == $d"
, когда должны быть в кавычках два аргумента "$s"
и "$d"
.
Это означает, что вместо сравнения $s
с $d
вы проверяете, является ли "2 == 3"
непустой строкой (то есть).
Это правильно выведет "не равно":
s=2
d=3
if ! [ "$s" == "$d" ]; then echo "not equal"; fi
if [ "$s" == "$d" ]; then echo "equal"; fi