ذكري المظهر

كيفية زيادة متغير متغير في bash (عداد)

Week 4

Week 4

جدول المحتويات:

Anonim

إحدى العمليات الحسابية الأكثر شيوعًا عند كتابة البرامج النصية للباش هي زيادة وتقليل المتغيرات. غالبًا ما يستخدم هذا في حلقات مثل عداد ، ولكنه يمكن أن يحدث في مكان آخر في البرنامج النصي أيضًا.

الزيادة والخفض تعني إضافة أو طرح قيمة (عادةً 1 ) ، على التوالي ، من قيمة المتغير الرقمي. يمكن إجراء التوسيع الحسابي باستخدام الأقواس المزدوجة ((…)) و $((…)) أو باستخدام الأمر let المدمج.

في Bash ، هناك طرق متعددة لزيادة / تقليل المتغير. يشرح هذا المقال البعض منهم.

باستخدام + و - المشغلين

إن أبسط طريقة لزيادة / تقليل المتغير هي باستخدام + و.

i=$((i+1)) ((i=i+1)) let "i=i+1"

i=$((i-1)) ((i=i-1)) let "i=i-1"

تتيح لك هذه الطريقة زيادة / تقليل المتغير بأي قيمة تريدها.

فيما يلي مثال على زيادة متغير داخل حلقة until :

i=0 until do echo i: $i ((i=i+1)) done

i: 0 i: 1 i: 2 i: 3

+= و -= مشغلي

بالإضافة إلى العوامل الأساسية الموضحة أعلاه ، توفر bash أيضًا مشغلي التعيين += و -= . يتم استخدام هذه العوامل لزيادة / تقليل قيمة المعامل الأيسر مع القيمة المحددة بعد المشغل.

((i+=1)) let "i+=1"

((i-=1)) let "i-=1"

في الحلقة التالية ، نقوم بتقليل قيمة المتغير i بمقدار 5 .

i=20 while do echo Number: $i let "i-=5" done

Number: 20 Number: 15 Number: 10 Number: 5

باستخدام ++ و -- عوامل التشغيل

++ و -- المشغلين زيادة وتناقص ، على التوالي ، المعامل من قبل 1 وإرجاع القيمة.

((i++)) ((++i)) let "i++" let "++i"

((i--)) ((--i)) let "i--" let "--i"

يمكن استخدام العوامل قبل أو بعد المعامل. ومن المعروف أيضا باسم:

  • زيادة البادئة: ++i --i البادئة: - ++i زيادة البادئة: i++ postfix decrement: i--

يقوم مشغلو البادئة أولاً بزيادة / تقليل العوامل بنسبة 1 ثم يُرجعون القيمة الجديدة للعوامل. من ناحية أخرى ، تقوم عوامل تشغيل postfix بإرجاع قيمة العوامل قبل زيادتها / إنقاصها.

توضح الأمثلة التالية كيف يعمل عامل التشغيل ++ عندما يتم استخدامه قبل العامل وبعده:

x=5 y=$((x++)) echo x: $x echo y: $y

x: 6 y: 5

x=5 y=$((++x)) echo x: $x echo y: $y

x: 6 y: 6

فيما يلي مثال عن كيفية استخدام أداة زيادة postfix في برنامج نصي bash:

#!/bin/bash i=0 while true; do if]; then exit 1 fi echo i: $i ((i++)) done

عيب استخدام هذه العوامل هو أنه لا يمكن زيادة المتغير أو تقليله إلا بمقدار 1 .

استنتاج

يمكن تنفيذ زيادة ومتغيرات المتغيرات في Bash بعدة طرق مختلفة. مهما كانت الطريقة التي تستخدمها ، فإن النتيجة هي نفسها.

إذا كان لديك أي أسئلة أو تعليقات ، فلا تتردد في ترك تعليق.

باش حلقة المحطة