Ի՞նչ է Bash-ը Linux-ում և ինչի՞ համար կարող եք օգտագործել այն:


Հիմնական Takeaways

  • Bash-ը Linux սկրիպտավորման ամենահայտնի CLI-ներից մեկն է:
  • Bash scripting-ը ավելի արդյունավետ է դարձնում այնպիսի առաջադրանքներ, ինչպիսիք են տվյալների տեսակավորումը կամ կրկնվող առաջադրանքների պլանավորումը:
  • Դուք կարող եք սովորել Bash-ը՝ պարապելով օրինակներից և խաղալով առցանց սցենարային խաղեր:

Bash scripting-ը Linux-ի ձեր փորձը բարձրացնելու լավագույն միջոցներից մեկն է, բայց սովորելը կարող է վախեցնել: Ահա այն, ինչ դուք պետք է իմանաք Bash-ի մասին և ինչպես կարող եք սկսել հիմնական սկրիպտավորումը:

Ի՞նչ է Bash-ը Linux-ում:

Bash-ը (Bourne-Again SHell) հրամանի տողի լռելյայն միջերեսն է (CLI), որը դուք կօգտագործեք Linux բաշխումների մեծ մասում: Դա այն թարգմանիչն է, որը դուք օգտագործում եք Տերմինալում: Դուք կարող եք օգտագործել այն հավելվածներ տեղադրելու, հրամանի տող ծրագրեր գործարկելու և սկրիպտավորման միջոցով նոր գործառույթներ ավելացնելու համար:

Shell scripting-ը թույլ է տալիս Bash-ում անել այնպիսի բաներ, որոնք կարող եք անել այլ հիմնական ծրագրավորման լեզուների հետ՝ բոլորը ձեր օպերացիոն համակարգին և ֆայլերին հարմար հասանելիությամբ: Տերմինալի հրամանները հաճախ շատ պարզ սցենարներ են: Դուք կարող եք տերմինալի օգտագործումը հասցնել հաջորդ մակարդակի՝ գրելով ձեր սեփական Bash սկրիպտները:

Bash-ը և CLI-ի այլ պատյաններն ավելի դժվար են օգտագործել, քան գրաֆիկական ինտերֆեյսի (GUI) կոմունալ ծրագիրը, սակայն դրանք ունեն որոշ առավելություններ.

  • Նրանք ավելի քիչ ռեսուրսներ են պահանջում, քանի որ խուսափում են գրաֆիկական պատկերներ ցուցադրելուց:
  • Երբ դուք հմուտ եք գրելու սկրիպտներ, նրանք շատ ավելի արագ են կատարում այնպիսի առաջադրանքներ, ինչպիսիք են գրացուցակի անվանումը և բոլոր ենթագրանցերի ցուցակագրումը:
  • Դրանք կարող են օգտագործվել տեղեկատվությունը հաշվարկելու համար (օրինակ՝ քանի ֆայլի անունը սկսվում է «a»-ով), որը չի աջակցվում GUI հավելվածների միջոցով:
  • Ֆայլերի մեջ տվյալների տեսակավորումը (ինչպես CSV-ները) ավելի արդյունավետ է CLI սկրիպտավորման դեպքում:

Ինչի՞ համար կարող եք օգտագործել Bash-ը:

Bash scripting-ը օգտակար է հիմնական առաջադրանքների ավտոմատացման համար: Դուք դանդաղ կսկսեք, երբ առաջին անգամ սկսեք սցենար գրել, բայց քանի որ դուք ավելի վստահ և գիտակ եք դառնում, դուք կգտնեք ուղիներ՝ ավարտելու գրեթե ցանկացած բարդ առաջադրանք ընդամենը մի քանի րոպե կենտրոնացված սցենարով:

Bash-ի օգտագործումը սկսելու հեշտ ձևերից մեկը cron-ից օգտվելն է՝ Linux ծառայությունը, որը պլանավորում է առաջադրանքները: Դուք կարող եք օգտագործել այն որոշակի ժամանակներում կամ ընդմիջումներով որոշակի սկրիպտներ կամ այլ առաջադրանքներ գործարկելու համար: cron-ն օգտագործում է տեքստային ֆայլ (crontab կամ «cron table»)՝ հետևելու, թե որ հրամաններն են պլանավորված և երբ:

Օրինակ, եթե ցանկանում եք ստիպել ձեր Ubuntu համակարգը ավտոմատ կերպով թարմացնել իր փաթեթի պահոցը և ծրագրակազմը շաբաթը մեկ անգամ, լավ գրված cron առաջադրանքը կարող է օգնել: Դուք կարող եք սկսել այս առաջադրանքը՝ բացելով Տերմինալը, մուտքագրելով nano՝ տեքստային խմբագիր բացելու համար և գրելով հետևյալ սցենարը autoupdate.sh անունով ֆայլում.

#!/bin/bash
sudo apt-get update

Այդ սկրիպտը գրելուց, պահելուց և փակելուց հետո (իդեալական է այն պահել ձեր տուն գրացուցակում), հաջորդ քայլը այն ավելացնելն է ձեր crontab-ում: Դուք կարող եք բացել crontab-ը խմբագրման համար՝ տերմինալում մուտքագրելով հետևյալ հրամանը.

crontab -e

Երբ crontab-ը բացվի, ձեր հաջորդ քայլը կլինի առաջադրանքը ավելացնելը: Autoupdate.sh-ը շաբաթական մեկ անգամ գործարկելու համար հարկավոր է գրել այսպիսի մի բան՝ նախքան ֆայլը պահելը և դուրս գալը.

* * * * 0 ./autoupdate.sh

Դուք նույնիսկ կարող եք գրել cron առաջադրանքներ՝ ձեր ֆայլերը մաքրելու համար կամ օգտագործել at հրամանը՝ Bash shell-ի միջոցով չկրկնվող առաջադրանքները պլանավորելու համար: Համատեղելով այս երկու կոմունալ ծառայությունները, դուք կարող եք ավտոմատացնել կրկնվող կամ կանխատեսելի առաջադրանքների մեծ մասը, որոնք դուք պետք է կատարեք ձեր համակարգչում: Դուք կարող եք ավտոմատ կերպով ստեղծել սցենարներ՝

  • Թարմացրեք ձեր համակարգիչը կամ հատուկ հավելվածները:
  • Ուղարկել նամակներ:
  • Փոխեք ձայնի ձայնը, էկրանի պայծառությունը կամ այլ կարգավորումները:
  • Պատճենել, կարդալ, խմբագրել կամ շահարկել ֆայլերը:

Bash scripting-ը սովորելու լավագույն միջոցը օրինակն է: Գործնականորեն անսահմանափակ թվով եղանակներ կան, որոնք կարող եք բարելավել ձեր համակարգը Bash-ի միջոցով: Ուսուցումներին հետևելը և շարահյուսության մասին կարդալը աստիճանաբար կբարելավեն ձեր սեփական սցենարները գրելու կարողությունը: Եթե ցանկանում եք ավելին իմանալ Bash-ի մասին, փորձեք՝

  • Ստուգելով ձեր էլ.փոստը Mutt-ի հետ:
  • Համացանցում զննարկում w3m-ով:
  • Երաժշտություն նվագարկել mpg321-ով:
  • Պատկերների խմբագրում imagemagick-ով:
  • Ընթերցանություն և գրել vim-ի հետ:
  • Ֆայլերի զննում ռեյնջերի միջոցով:
  • Clipboarding ֆայլեր xclip-ով:
  • Տեսանյութերի խմբագրում ffmpeg-ով։

Ինչպես գրել սցենարներ Bash-ով Linux-ում

Եթե գաղափարների պակաս ունեք, կարող եք նաև սովորել Bash-ը՝ առցանց խաղեր խաղալով: Լավագույն խաղերից մի քանիսը, որոնք դուք կարող եք խաղալ, սովորելու համար Bash scripting ներառում են.

  • Terminus, տեքստային արկածային խաղ, որը տեղակայված է MIT-ի կայքում։
  • OverTheWire-ը, որը հյուրընկալում է ավելի քան մեկ տասնյակ «wargames»՝ օգնելու ձեզ սովորել տարբեր սցենարային հմտություններ խնդիրների լուծման միջոցով:

Ինչպես գործարկել Bash սցենարը Linux-ում

Դուք կարող եք ստեղծել և գործարկել Bash սկրիպտը Linux-ում՝ օգտագործելով ձեր նախընտրած տեքստային խմբագրիչը: vim և nano երկուսն էլ հիանալի տարբերակներ են, և դուք կարող եք բացել որևէ մեկը՝ մուտքագրելով նրանց անունը Տերմինալում: Դուք կարող եք անմիջապես պահել և անվանակոչել ձեր ֆայլը՝ համոզվելով, որ դրա ֆայլի անունը ավարտվում է .sh -ով (shell script ֆայլի ընդլայնում):

Ձեր սցենարը գրելուց հետո կարող եք այն գործարկել հետևյալ Տերմինալի հրամաններով.

sudo chmod +x filename.sh
./filename.sh

Հնարավոր է, որ ձեզ անհրաժեշտ լինի փոքրից սկսել Bash սկրիպտավորումով: Բավական պրակտիկայի դեպքում, սակայն, հնարավոր է բարդ, դժվար, կրկնվող առաջադրանքները վերածել փոքրիկ մարտահրավերների, որոնք կարող եք լուծել րոպեների ընթացքում: Դա էական հմտություն է տեխնոլոգիական մասնագետների և հզոր օգտագործողների համար, և սովորելու լավագույն վայրը Տերմինալի մեկ պատուհանն է: