របៀបសរសេរសេចក្តីថ្លែងការណ៍ប្រសិនបើមានស្គ្រីប Bash

ពាក្យបញ្ជាវាក្យសម្ពន្ធនិងឧទាហរណ៍

ជាមួយសេចក្តីថ្លែងការណ៍ if - ដែលជាប្រភេទនៃសេចក្តីថ្លែងការណ៍លក្ខខណ្ឌអ្នកអាចអនុវត្តសកម្មភាពផ្សេងៗអាស្រ័យលើលក្ខខណ្ឌដែលបានបញ្ជាក់។ វាមានប្រសិទ្ធិភាពផ្តល់ឱ្យប្រព័ន្ធសមត្ថភាពក្នុងការសម្រេចចិត្ត។

ឧទាហរណ៍នៃទម្រង់សាមញ្ញបំផុតនៃ if-statement គឺ:

count = 5 ប្រសិនបើ [$ count == 5] បន្ទាប់មកត្រាប់ "$ count" fi

ក្នុងឧទាហរណ៍នេះអថេរ "count" ត្រូវបានប្រើដើម្បីបញ្ជាក់លក្ខខណ្ឌដែលត្រូវបានប្រើជាផ្នែកនៃ if- statement ។ មុនពេល if-statement ត្រូវបានប្រតិបត្តិអថេរ "count" ត្រូវបានផ្តល់តម្លៃ "5" ។ if-statement បន្ទាប់មកពិនិត្យមើលថាតើតម្លៃនៃ "count" ជា "5" ។ ប្រសិនបើនោះជាករណីពាក្យសម្ដីរវាងពាក្យគន្លឹះ "បន្ទាប់មក" និង "fi" ត្រូវបានប្រតិបត្តិបើមិនដូច្នោះទេសេចក្ដីថ្លែងការណ៍ណាមួយក្រោយការប្រៀបធៀបប្រសិនបើត្រូវបានប្រតិបត្តិ។ ពាក្យគន្លឹះ "fi" គឺ "ប្រសិនបើ" សរសេរបានថយក្រោយ។ ភាសាស្គ្រីប bash ប្រើអនុសញ្ញានេះដើម្បីសម្គាល់ការបញ្ចប់នៃកន្សោមស្មុគស្មាញដូចជា if- statement ឬ case- statements ។

សេចក្តីថ្លែងការណ៍ "អេកូ" បោះពុម្ពអាគុយម៉ង់ក្នុងករណីនេះតម្លៃនៃអថេរ "រាប់" ទៅបង្អួចស្ថានីយ។ ការចូលបន្ទាត់នៃកូដរវាងពាក្យគន្លឹះរបស់ if-statement ធ្វើអោយប្រសើរឡើងនូវការអានប៉ុន្តែមិនចាំបាច់។

ប្រសិនបើអ្នកមានស្ថានភាពដែលក្រមកូដគួរត្រូវបានប្រតិបត្តិតែក្នុងករណីដែលលក្ខខណ្ឌមិនពិតអ្នកអាចប្រើពាក្យគន្លឹះ "else" នៅក្នុង if- statement ដូចនៅក្នុងឧទាហរណ៍នេះ:

count = 5 ប្រសិនបើ [$ count == 5] បន្ទាប់មក echo "$ count" echo ផ្សេងទៀត "count គឺមិនមែន 5"

ប្រសិនបើលក្ខខណ្ឌ "$ count == 5" ជាការពិតប្រព័ន្ធនឹងបោះពុម្ពតម្លៃនៃអថេរ "count" បើមិនដូច្នោះទេវានឹងបោះពុម្ពខ្សែអក្សរ "count is not 5" ។

ប្រសិនបើអ្នកចង់ធ្វើឱ្យមានភាពខុសគ្នារវាងលក្ខខណ្ឌជាច្រើនអ្នកអាចប្រើពាក្យគន្លឹះ "elif" ដែលត្រូវបានមកពី "else if" ដូចនៅក្នុងឧទាហរណ៍នេះ:

បើ [$ count == 5] បន្ទាប់មកអេកូ "រាប់គឺប្រាំ" elif [$ count == 6] បន្ទាប់មកអេកូ "count is six" echo ផ្សេងទៀត "none of the above" fi

ប្រសិនបើ "រាប់" គឺ "5" នោះប្រព័ន្ធបោះពុម្ព "រាប់គឺប្រាំ" ។ ប្រសិនបើ "រាប់" មិនមែន "5" ទេប៉ុន្តែ "6", ប្រព័ន្ធបោះពុម្ព "រាប់គឺប្រាំមួយ" ។ ប្រសិនបើវាមិនមែនជា "5" ឬ "6" នោះប្រព័ន្ធនឹងបោះពុម្ព "គ្មានអ្វីខាងលើ" ។

ដូចអ្នកបានទាយរួចហើយអ្នកអាចមានកម្រិត "elif" clause ។ ឧទាហរណ៏ជាមួយលក្ខខណ្ឌ "elif" ច្រើនគឺ:

echo "count is six" elif [$ count == 7] បន្ទាប់មកអេកូ "count is seven" elif [$ count = = 8] បន្ទាប់មក echo "count is eight" elif [$ count == 9] បន្ទាប់មកអេកូ "count is nine" echo ផ្សេងទៀត "none of the above" fi

មធ្យោបាយបង្រួមជាងមុនក្នុងការសរសេរសេចក្តីថ្លែងការណ៍បែបនេះជាមួយលក្ខខណ្ឌច្រើនគឺវិធីសាស្ត្រ ករណី ។ វាមានមុខងារស្រដៀងទៅនឹង If-statement ដែលមានឃ្លាជាច្រើន "elif" ប៉ុន្តែវាមានលក្ខណៈសង្ខេប។ ឧទហរណ៍ក្រមខាងលើនៃកូដអាចត្រូវបានសរសេរឡើងវិញជាមួយនឹងសេចក្តីថ្លែងការណ៍ "ករណី" ដូចខាងក្រោម:

ករណី "$ count" ជា 5) អេកូ "count is five"; 6) អេកូ "រាប់គឺប្រាំមួយ"; 7) អេកូ "រាប់គឺប្រាំពីរ" ;; 8) អេកូ "រាប់គឺប្រាំបី"; 9) អេកូ "រាប់គឺប្រាំបួន"; *) echo "គ្មានខាងលើ" esac

ប្រសិនបើសេចក្តីថ្លែងការណ៍ត្រូវបានគេប្រើជាញឹកញាប់នៅខាងក្នុង សម្រាប់រង្វិលជុំពេលរង្វិលជុំ ដូចក្នុងឧទាហរណ៍នេះ:

count = 1 done = 0 ខណៈពេល [$ count -le 9] ដេក 1 ((រាប់ ++)) បើ [$ count == 5] បន្ទាប់មកបន្តពិនិត្យឡើងវិញ "count count"

អ្នកក៏អាចត្រូវបានដាក់បញ្ចូលគ្នាប្រសិនបើសេចក្តីថ្លែង។ ប្រហាក់ប្រហែលគ្នាប្រសិនបើសេចក្តីថ្លែងការណ៍ស្ថិតនៅក្នុងសំណុំបែបបទ: ប្រសិនបើ ... បន្ទាប់ ... ផ្សេងទៀត ... បើ ... បន្ទាប់ ... fi ... fi ។ ទោះជាយ៉ាងណាក៏ដោយប្រសិនបើ - statement អាចដាក់ក្នុងភាពស្មុគស្មាញដោយបំពាន។

សូមមើល វិធីដើម្បីហុចអាគុយម៉ង់ទៅស្គ្រីប bash ដែលបង្ហាញពីរបៀបប្រើលក្ខខណ្ឌដើម្បីដំណើរការប៉ារ៉ាម៉ែត្រដែលបានហុចពីបន្ទាត់ពាក្យបញ្ជា។

សែល bash ផ្តល់នូវការបង្កើតកម្មវិធីផ្សេងៗដូចជា loop , while-loops និង កន្សោមនព្វន្ធ