بسط حسابی

فصل ‎13‎- بسط حسابی

بسط حسابی ابزار قدرتمندی برای انجام عملیات حسابی (صحیح) در اسکریپت‌ها فراهم می‌سازد. ترجمه یک رشته به عبارت حسابی با استفاده از نقل‌قول‌های برعکس، پرانتزهای دوتایی، یا فرمان let به نسبت آسان است.

انواع

بسط حسابی باbacktickها (بیشتر اوقات در تلفیق با expr استفاده شده)

z=`expr $z + 3`          # فرمان ‎'expr'‎ بسط را انجام می‌دهد.

بسط حسابی با پرانتزهای دوتایی، و استفاده از let

به کار بردن backtickها (نقل‌قول‌های برعکس) در بسط حسابی، بواسطه پرانتزهای دوتایی -- ‎((...))‎ و ‎$((...))‎ -- و همچنین بوسیله ساختار بسیار راحت let از اعتبار افتاده است.

z=$(($z+3))
z=$((z+3))         #                                
                   #

#    ‎$((EXPRESSION))‎ بسط حسابی است. نباید با جایگزینی فرمان اشتباه شود.


#

  n=0
  echo "n = $n"           #

  (( n += 1 ))            #                   
                          #  ‎(( $n += 1 ))‎ نادرست است!
  echo "n = $n"           #                    


let z=z+3
let "z += 3"  # 
              #در واقع عملگر 'let' به جای بسط، ارزیابی حسابی انجام می‌دهد.

مثالهای بسط حسابی در اسکریپت‌ها:

  1. مثال ‎16-9‎

  2. مثال ‎11-15‎

  3. مثال ‎27-1‎

  4. مثال ‎27-11‎

  5. مثال ‎A-16‎