برای تستها، ساختار [[ ]] میتواند مناسبتر از [ ] باشد. به همچنین، مقایسههای حسابی میتوانند از ساختار (( )) بهرهمند گردند.
a=8 #تمام مقایسههای زیر معادل هم هستند. test "$a" -lt 16 && echo "yes, $a < 16" #لیست and /bin/test "$a" -lt 16 && echo "yes, $a < 16" [ "$a" -lt 16 ] && echo "yes, $a < 16" [[ $a -lt 16 ]] && echo "yes, $a < 16" #نقلقول کردن متغیرها در داخل (( a < 16 )) && echo "yes, $a < 16" #[[ ]] و (( )) ضروری نیست. city="New York" #یکبار دیگر، تمام مقایسههای زیر معادل هستند. test "$city" \< Paris && echo "Yes, Paris is greater than $city" #ترتیب بزرگتر اسکی. /bin/test "$city" \< Paris && echo "Yes, Paris is greater than $city" [ "$city" \< Paris ] && echo "Yes, Paris is greater than $city" [[ $city < Paris ]] && echo "Yes, Paris is greater than $city" #نقلقول کردن $city لازم نیست. #S.C. متشکرم