មគ្គុទ្ទេសក៍អ្នកចាប់ផ្តើមថ្មីដើម្បីបញ្ចូល - ប៉ារ៉ាម៉ែត្របញ្ចូល

សូមស្វាគមន៏ទៅផ្នែកទី 2 នៃមគ្គុទ្ទេសក៍អ្នកណែនាំថ្មីដើម្បីស៊េរី BASH ដែលមានតែមួយគត់ក្នុងនោះវាគឺជាការបង្រៀនតែ BASH ដែលសរសេរដោយអ្នកចាប់ផ្តើមដំបូងសម្រាប់អ្នកចាប់ផ្តើមដំបូង។

អ្នកអានសៀវភៅណែនាំនេះនឹងបង្កើនចំណេះដឹងរបស់ពួកគេនៅពេលខ្ញុំបង្កើនចំណេះដឹងរបស់ខ្ញុំហើយសង្ឃឹមថានៅចុងបញ្ចប់យើងនឹងអាចសរសេរស្គ្រីបបានត្រឹមត្រូវ។

កាលពីសប្តាហ៍មុនខ្ញុំបាន បង្កើតស្គ្រីបដំបូងរបស់អ្នក ដែលបង្ហាញពីពាក្យថា "Hello World" ។ វាគ្របដណ្តប់លើប្រធានបទដូចជាកម្មវិធីនិពន្ធអត្ថបទរបៀបបើកបង្អួចស្ថានីយកន្លែងដាក់ស្គ្រីបរបស់អ្នករបៀបបង្ហាញពាក្យ "ជំរាបសួរពិភពលោក" និងចំណុចល្អ ៗ មួយចំនួននៅលើអក្សរដែលគេចចេញដូចជាសម្រង់ ("") ។

សប្តាហ៍នេះខ្ញុំនឹងគ្របដណ្តប់ប៉ារ៉ាម៉ែត្របញ្ចូល។ មានមគ្គុទ្ទេសក៍ផ្សេងទៀតដែលបង្រៀនប្រភេទនៃរឿងនេះប៉ុន្តែខ្ញុំរកឃើញថាពួកគេលោតចូលទៅក្នុងវត្ថុកម្រិតទាបខ្លះហើយអាចផ្តល់ព័ត៌មានច្រើនពេក។

ប៉ារ៉ាម៉ែត្រជាអ្វី?

នៅក្នុងស្គ្រីបជំរាបសួរ "" ពីឯកសារបង្រៀនចុងក្រោយវាទាំងអស់សុទ្ធតែឋិតិវន្ត។ ស្គ្រីបពិតជាមិនបានធ្វើអ្វីច្រើនទេ។

តើយើងអាចធ្វើឱ្យប្រសើរឡើងលើស្គ្រីប "សួស្ដីពិភពលោក" បានដោយរបៀបណា?

ចុះចំណែកឯស្គ្រីបដែលសួរសុខទុក្ខអ្នកដែលរត់វា? ជំនួសឱ្យការនិយាយថា "Hello World" វានឹងនិយាយថា "Hello Gary", "Hello Tim" ឬ "Hello Dolly" ។

ដោយគ្មានសមត្ថភាពក្នុងការទទួលយកប៉ារ៉ាម៉ែត្របញ្ចូលយើងនឹងត្រូវសរសេរស្គ្រីបបីគឺ "hellogary.sh" "hellotim.sh" និង "hellodolly.sh" ។

ដោយអនុញ្ញាតឱ្យស្គ្រីបរបស់យើងអានប៉ារ៉ាម៉ែត្របញ្ចូលយើងអាចប្រើស្គ្រីបមួយដើម្បីស្វាគមន៍នរណាម្នាក់។

ដើម្បីបើកវាបើកបង្អួចស្ថានីយ (CTRL ALT + T) ហើយរុករកទៅថតស្គ្រីបរបស់អ្នកដោយវាយដូចខាងក្រោម: ( ពាក្យបញ្ជា cd )

ស្គ្រីបស៊ីឌី

បង្កើតស្គ្រីបថ្មីមួយដែលមានឈ្មោះថា greetme.sh ដោយវាយដូចខាងក្រោម: ( ពាក្យបញ្ជា touch )

ប៉ះ greetme.sh

បើកស្គ្រីបក្នុងកម្មវិធីនិពន្ធសំណព្វរបស់អ្នកដោយវាយដូចខាងក្រោម: ( អំពីពាក្យបញ្ជា nano )

nano greetme.sh

បញ្ចូលអត្ថបទដូចខាងក្រោមនៅក្នុងណាណូ:

#! / bin / bash អេកូ "សួស្ដី $ @"

ចុច CTRL និង O ដើម្បីរក្សាទុកឯកសារហើយបន្ទាប់មក CTRL និង X ដើម្បីបិទឯកសារ។

ដើម្បីរត់ស្គ្រីបបញ្ចូលដូចខាងក្រោមចូលទៅក្នុងបន្ទាត់ពាក្យបញ្ជាជំនួសដោយឈ្មោះរបស់អ្នក។

sh greetme.sh

ប្រសិនបើខ្ញុំរត់ស្គ្រីបជាមួយឈ្មោះរបស់ខ្ញុំវាបង្ហាញពាក្យ "Hello Gary" ។

បន្ទាត់ទីមួយមានបន្ទាត់ #! / bin / bash ដែលត្រូវបានប្រើដើម្បីសម្គាល់ឯកសារជាស្គ្រីប bash ។

បន្ទាត់ទីពីរប្រើសេចក្តីថ្លែង echo ដើម្បីអេកូពាក្យ hello ហើយបន្ទាប់មកមាន $ @ ចម្លែក។ ( អំពីពាក្យបញ្ជាអេកូ )

$ @ ពង្រីកដើម្បីបង្ហាញប៉ារ៉ាម៉ែត្រនីមួយៗដែលត្រូវបានបញ្ចូលជាមួយឈ្មោះស្គ្រីប។ ដូច្នេះប្រសិនបើអ្នកវាយ "sh greetme.sh tim" ពាក្យ "hello heart" នឹងត្រូវបានបង្ហាញ។ ប្រសិនបើអ្នកវាយ "greetme.sh tim smith" បន្ទាប់មកពាក្យ "hello tim smith" នឹងត្រូវបានបង្ហាញ។

វាប្រហែលជាល្អសម្រាប់ស្គ្រីប greetme.sh ដើម្បីនិយាយគ្រាន់តែសរសេរដោយប្រើឈ្មោះដំបូង។ គ្មាននរណាម្នាក់និយាយថា "ជំរាបសួរជែរីថ្មី" ទេពេលពួកគេជួបខ្ញុំពួកគេប្រហែលជានិយាយ "ជំរាបសួរ" ។

ចូរផ្លាស់ប្តូរស្គ្រីបដូច្នេះវាគ្រាន់តែប្រើប៉ារ៉ាម៉ែត្រដំបូង។ បើកស្គ្រីប greetme.sh នៅក្នុង nano ដោយវាយដូចខាងក្រោម:

nano greetme.sh

ផ្លាស់ប្តូរស្គ្រីបដូច្នេះវាអានដូចខាងក្រោម:

#! / bin / bash អេកូ "សួស្ដី $ 1"

រក្សាទុកស្គ្រីបដោយចុច CTRL និង O ហើយបន្ទាប់មកចេញដោយចុច CTRL និង X ។

រត់ស្គ្រីបដូចដែលបានបង្ហាញខាងក្រោម (ជំនួសឈ្មោះរបស់ខ្ញុំជាមួយរបស់អ្នក):

sh greetme.sh gary newell

នៅពេលអ្នកដំណើរការស្គ្រីបវានឹងនិយាយថា "សួស្តីហ្គែរី" (ឬសង្ឃឹមថា "សួស្តី" និងអ្វីក៏ដោយដែលអ្នកមានឈ្មោះ។

សញ្ញាទី 1 បន្ទាប់ពីនិមិត្តសញ្ញា $ ជាមូលដ្ឋាននិយាយអំពីពាក្យបញ្ជាអេកូប្រើប៉ារ៉ាម៉ែត្រដំបូង។ ប្រសិនបើអ្នកជំនួស $ 1 ដោយ $ 2 បន្ទាប់មកវានឹងបង្ហាញ "hello newell" (ឬអ្វីក៏ដោយដែលនាមត្រកូលរបស់អ្នកគឺ) ។

ចៃដន្យប្រសិនបើអ្នកជំនួស $ 2 ដោយ $ 3 និងរត់ស្គ្រីបដោយគ្រាន់តែ 2 ប៉ារ៉ាម៉ែត្រលទ្ធផលគ្រាន់តែជា "ជំរាបសួរ" ប៉ុណ្ណោះ។

វាអាចបង្ហាញនិងដោះស្រាយចំនួនប៉ារ៉ាម៉ែត្រដែលបានបញ្ចូលពិតប្រាកដហើយក្នុងការបង្រៀនពេលក្រោយខ្ញុំនឹងបង្ហាញអំពីរបៀបប្រើចំនួនប៉ារ៉ាម៉ែត្រសម្រាប់គោលបំណងសុពលភាព។

ដើម្បីបង្ហាញចំនួនប៉ារ៉ាម៉ែត្រដែលបានបញ្ចូលបើកស្គ្រីប greetme.sh (nano greetme.sh) និងកែប្រែអត្ថបទដូចខាងក្រោម:

#! / bin / bash អេកូ "អ្នកបានបញ្ចូលឈ្មោះ $ #" echo "hello $ @"

ចុច CTRL និង O ដើម្បីរក្សាទុកស្គ្រីបនិង CTRL និង X ដើម្បីចេញពី nano ។

$ # នៅបន្ទាត់ទី 2 បង្ហាញចំនួនប៉ារ៉ាម៉ែត្រដែលបានបញ្ចូល។

ដូច្នេះរហូតមកដល់ពេលនេះទាំងអស់នេះត្រូវបានប្រលោមលោកប៉ុន្តែមិនមានប្រយោជន៍ខ្លាំងណាស់។ តើអ្នកណាត្រូវការស្គ្រីបដែលបង្ហាញធម្មតា "សួស្តី"?

ការប្រើប្រាស់ពិតប្រាកដសម្រាប់សេចក្តីថ្លែងការណ៏អេកូគឺដើម្បីផ្តល់នូវការបញ្ចេញមតិនិងលទ្ធផលប្រកបដោយអត្ថន័យដល់អ្នកប្រើប្រាស់។ ប្រសិនបើអ្នកអាចស្រមៃថាអ្នកចង់ធ្វើអ្វីដែលមានភាពស្មុគស្មាញដែលជាប់ពាក់ព័ន្ធនឹងចំនួនកូដជាក់លាក់និងការរៀបចំឯកសារ / ថតវានឹងមានប្រយោជន៍ដើម្បីបង្ហាញដល់អ្នកប្រើនូវអ្វីដែលកំពុងកើតឡើងនៅជំហាននីមួយៗ។

ផ្ទុយទៅវិញប៉ារ៉ាម៉ែត្របញ្ចូលធ្វើឱ្យស្គ្រីបរបស់អ្នកមានអន្តរកម្ម។ ដោយគ្មានប៉ារ៉ាម៉ែត្របញ្ចូលអ្នកត្រូវការស្គ្រីបរាប់សិបនាក់ធ្វើអ្វីៗស្រដៀងគ្នាតែមានឈ្មោះផ្សេងគ្នាបន្តិចបន្តួច។

ជាមួយនឹងការទាំងអស់នេះក្នុងចិត្តមានប៉ារ៉ាម៉ែត្រធាតុបញ្ចូលមានប្រយោជន៍ផ្សេងទៀតដែលវាជាគំនិតល្អដើម្បីដឹងហើយខ្ញុំនឹងបញ្ចូលពួកវាទាំងអស់នៅក្នុងកូដមួយ។

បើកស្គ្រីប greetme.sh របស់អ្នកនិងកែប្រែវាដូចខាងក្រោម:

#! / bin / bash អេកូ "Filename: $ 0" echo "លេខសម្គាល់ដំណើរការ: $$" echo "---------------------------- --- "អេកូ" អ្នកបានបញ្ចូលឈ្មោះ $ # "echo" ជំរាបសួរ $ @ "

ចុច CTRL និង O ដើម្បីរក្សាទុកឯកសារនិង CTRL និង X ដើម្បីចេញ។

ឥឡូវរត់ស្គ្រីប (ជំនួសដោយឈ្មោះរបស់អ្នក) ។

sh greetme.sh

ពេលនេះស្គ្រីបបង្ហាញដូចខាងក្រោម:

ឈ្មោះឯកសារ: greetme.sh លេខសម្គាល់ដំណើរការ: 18595 ------------------------------ អ្នកបានបញ្ចូល 2 ឈ្មោះ hello gary newell

$ 0 នៅបន្ទាត់ទីមួយនៃស្គ្រីបបង្ហាញឈ្មោះរបស់ស្គ្រីបដែលអ្នកកំពុងដំណើរការ។ ចំណាំថាវាជាប្រាក់ដុល្លារសូន្យនិងមិនមែនដុល្លារអូ។

$$ នៅលើបន្ទាត់ទីពីរបង្ហាញលេខសម្គាល់ដំណើរការនៃស្គ្រីបដែលអ្នកកំពុងដំណើរការ។ ហេតុអ្វីវាមានប្រយោជន៍? ប្រសិនបើអ្នកកំពុងដំណើរការស្គ្រីបនៅផ្ទៃខាងក្រោយអ្នកអាចបោះបង់វាដោយគ្រាន់តែចុច CTRL និង C ។ ប្រសិនបើអ្នកដំណើរការស្គ្រីបក្នុងផ្ទៃខាងក្រោយហើយវាចាប់ផ្តើមរង្វិលជុំនិងធ្វើរឿងដូចគ្នាម្តងហើយម្តងទៀតឬចាប់ផ្តើមបង្កឱ្យខូចខាតដល់ប្រព័ន្ធរបស់អ្នកអ្នកនឹងត្រូវការ ដើម្បីសំលាប់វា។

ដើម្បីលុបស្គ្រីបដែលកំពុងរត់នៅក្នុងផ្ទៃខាងក្រោយអ្នកត្រូវការលេខសម្គាល់ដំណើរការនៃស្គ្រីប។ វាមិនល្អទេប្រសិនបើស្គ្រីបបានផ្តល់លេខសម្គាល់ដំណើរការជាផ្នែកនៃលទ្ធផលរបស់វា។ ( អំពី ps និងសំលាប់ពាក្យបញ្ជា )

ទីបំផុតមុនពេលខ្ញុំបញ្ចប់ជាមួយប្រធានបទនេះខ្ញុំចង់ពិភាក្សាអំពីកន្លែងដែលលទ្ធផលចេញ។ រាល់ពេលដែលស្គ្រីបបានដំណើរការដូច្នេះទិន្នផលត្រូវបានបង្ហាញនៅលើអេក្រង់។

វាជារឿងធម្មតាសម្រាប់លទ្ធផលស្គ្រីបដែលត្រូវបានសរសេរទៅឯកសារលទ្ធផល។ ដើម្បីធ្វើដូចនេះត្រូវដំណើរការស្គ្រីបរបស់អ្នកដូចខាងក្រោម:

sh greetme.sh gary> greetme.log

និមិត្តសញ្ញានៅក្នុងពាក្យបញ្ជាខាងលើបញ្ចេញអត្ថបទ "hello gary" ទៅឯកសារដែលមានឈ្មោះ greetme.log ។

រាល់ពេលដែលអ្នករត់ស្គ្រីបដោយនិមិត្តសញ្ញាវាសរសេរជាន់លើមាតិកានៃឯកសារលទ្ធផល។ ប្រសិនបើអ្នកចូលចិត្តបន្ថែមទៅខាងចុងឯកសារជំនួស> with >> ។

សង្ខេប

ឥឡូវអ្នកគួរតែអាចសរសេរអត្ថបទលើអេក្រង់និងទទួលប៉ារ៉ាម៉ែត្របញ្ចូល។