Я наткнулся на этот фрагмент кода и спросил себя о его значении:
if `getopt -T >/dev/null 2>&1` ; [ $? = 4 ]
then
#do a thing
else
#do the other thing
fi
Что меня раздражает, так это [$? = 4] часть. Это похоже на тест для кода завершения последней команды, который имеет смысл, так как "#do a thing" и "#do другой объект" относятся к тому, как работать с различными версиями getopt, но оценивается ли он вообще? Если так, то как? Я никогда не видел такого утверждения после ключевого слова if.
Спасибо!