Beginners Guide to BASH - Մաս 1 - Բարեւ աշխարհ

Ինտերնետում բազմաթիվ ուղեցույցներ կան, որոնք ցույց են տալիս, թե ինչպես ստեղծել Shell- ի սցենարները BASH- ի միջոցով, եւ այս ուղեցույցը նպատակ ունի մի փոքր այլ պտույտ տալ, քանի որ այն գրված է այն մարդու կողմից, որն ունի շատ փոքր շերտերի սցենարական փորձ:

Այժմ դուք կարող եք մտածել, որ դա հիմար գաղափար է, բայց ես գտնում եմ, որ որոշ ուղեցույցներ խոսում են ձեզ հետ, քանի որ արդեն իսկ փորձագետ եք եւ այլ ուղեցույցներ, որոնք շատ երկար են տեւում, հալածելու համար:

Մինչդեռ LINUX / UNIX- ի շերտերի սցենարների փորձը սահմանափակ է, ես առեւտրի միջոցով ծրագրավորող եմ, եւ ես դաբ ձեռքն եմ սցենարական լեզուներով, ինչպիսիք են PERL, PHP եւ VBScript:

Այս ուղեցույցի իմաստը այն է, որ դուք կսովորեք, ինչպես ես սովորում եմ եւ ստացվում եմ ցանկացած տեղեկատվություն, որը ես կանցնեմ ձեզ:

Սկսել

Գոյություն ունի ակնհայտորեն շատ տեսության, որ ես կարող եմ անմիջապես անցնել ձեզ, ինչպես նկարագրելով տարբեր տեսակի խեցեղենի եւ BSH- ի օգտագործման առավելությունները KSH եւ CSH- ի նկատմամբ:

Մարդկանց մեծամասնությունը, նոր բան սովորելով, ուզում է ցատկել եւ սկսել որոշ պրակտիկ դասեր, եւ այդ մտքում ես չեմ պատրաստվում քեզ հետ զուգահեռներ անել, ինչը կարեւոր չէ:

Այս ուղեցույցին հետեւելու համար անհրաժեշտ բոլորը տեքստային խմբագիրն է եւ տերմինալը, որը աշխատում է BASH- ի (Linux- ի ամենատարածված մասնաբաժինների վրա):

Տեքստի խմբագիրներ

Այլ ուղեցույցներ, որոնք ես կարդացել եմ, առաջարկել են, որ Ձեզ անհրաժեշտ է տեքստային խմբագիր, որը ներառում է հրամանների գունավոր կոդավորում եւ առաջարկվող խմբագիրները կամ VIM կամ EMACS :

Գունավոր կոդավորումը հաճելի է, քանի որ կարեւորում է հրամանները, երբ դրանք մուտքագրվում են, բայց բացարձակ սկսնակների համար կարող եք ծախսել առաջին մի քանի շաբաթը առանց VIM- ի եւ EMACS- ի ուսուցման առանց մեկ գիծ կոդը:

Երկուից էլ ես նախընտրում եմ EMACS- ը, բայց անկեղծ ասած, ես նախընտրում եմ օգտագործել մի պարզ խմբագիր, ինչպիսիք են նանո , gedit կամ leafpad:

Եթե ​​դուք գրում եք սցենարներ ձեր սեփական համակարգչում, եւ դուք գիտեք, որ դուք միշտ կարող եք օգտվել գրաֆիկական միջավայրից, ապա դուք կարող եք ընտրել այն խմբագիրը, որն աշխատում է լավագույնը ձեզ համար, եւ դա կարող է լինել գրաֆիկական կամ GEdit կամ խմբագիր, որը ուղղակիորեն աշխատում է տերմինալում ինչպիսիք են նանոն կամ վիմ:

Այս ուղեցույցի նպատակների համար ես կօգտագործեմ նանո, քանի որ այն տեղադրվում է Linux- ի բաշխման մեծամասնության վրա, եւ հետեւաբար, հավանական է, որ դուք կկարողանաք մուտք գործել:

Բացելով տերմինալային պատուհանը

Եթե ​​դուք օգտագործում եք Linux բաշխումը գրաֆիկական աշխատասեղանի հետ, ինչպիսիք են Linux Mint կամ Ubuntu, դուք կարող եք բացել տերմինալային պատուհան `սեղմելով CTRL + ALT + T:

Որտեղ տեղադրել ձեր սցենարները

Այս ձեռնարկի նպատակների համար դուք կարող եք ձեր սցենարները տեղադրել ձեր տան պանակում գտնվող թղթապանակում:

Տերմինալային պատուհանի մեջ համոզվեք, որ ձեր տան պանակում եք `մուտքագրելով հետեւյալ հրահանգը.

cd ~

Cd- ի հրամանատարը փոխում է փոփոխության տեղեկատուը եւ tilde (~) - ձեր տան պանակի դյուրանցումը:

Կարող եք ստուգել, ​​որ ճիշտ տեղում եք, մուտքագրելով հետեւյալ հրահանգը.

pwd

The pwd հրամանը կպատմի ձեզ ձեր ներկայիս աշխատանքային գրացուցակը (որտեղ դուք գտնվում եք գրացուցակում ծառի մեջ): Իմ դեպքում վերադարձավ տուն / գարի:

Այժմ ակնհայտ է, որ դուք չեք ցանկանում տեղադրել ձեր սցենարները ուղղակիորեն տնային թղթապանակում, որպեսզի ստեղծեք սցենարներ կոչվող թղթապանակ `մուտքագրելով հետեւյալ հրամանը:

mkdir սցենարներ

Փոխեք նոր սցենարներ թղթապանակում, մուտքագրելով հետեւյալ հրահանգը.

cd սցենարներ

Ձեր առաջին սցենարը

Հաճախակի է սովորել, թե ինչպես պետք է ծրագրել առաջին ծրագիրը դարձնելու համար պարզապես «Բարեւ աշխարհ» բառերը թողարկելու համար:

Ձեր սցենարներից թղթապանակում մուտքագրեք հետեւյալ հրահանգը.

nano helloworld.sh

Այժմ մուտքագրեք հետեւյալ կոդը, նանո պատուհանում:

#! / bin / bash echo «Բարեւ աշխարհ»

Սեղմեք CTRL + O- ը ֆայլը պահպանելու եւ CTRL + X- ը դուրս գալ նանոից:

Սցենարը ինքնին կազմված է հետեւյալ կերպ.

#! / Bin / bash- ը պետք է ներառվի բոլոր գրերի վերեւում, քանի որ այն թույլ է տալիս թարգմանիչներին եւ օպերացիոն համակարգին իմանալ, թե ինչպես վարվել ֆայլը: Հիմնականում պարզապես հիշեք, որ այն տեղադրեք եւ մոռացեք, թե ինչու եք դա անում:

Երկրորդ տողում կա մեկ արձանագրություն, որը կոչվում է echo, որն անմիջապես հետեւում է տեքստը:

Նշենք, որ եթե ցանկանում եք ցուցադրել ավելի քան մեկ բառ, դուք պետք է օգտագործել կրկնակի տառեր (բառեր) շուրջ:

Այժմ կարող եք գործարկել սցենարը `մուտքագրելով հետեւյալ հրահանգը.

sh helloworld.sh

Պետք է հայտնվեն «բարեւ աշխարհ» բառերը:

Սցենարների վարման այլ ձեւ է հետեւյալը.

./helloworld.sh

Հնարավորությունները հետեւյալն են, եթե ձեր տերմինալում այդ հրահանգը գործադրեք, անմիջապես կստանաք թույլտվության սխալ:

Սցենարն այս ձեւով վարելու թույլտվություն տալու համար նշեք հետեւյալը.

sudo chmod + x helloworld.sh

Ուրեմն, ինչ է տեղի ունեցել այնտեղ: Ինչու եք կարողացել աշխատել sh helloworld.sh առանց թույլտվության փոխելու, բայց վազում: /helloworld.sh հարց է առաջացրել:

Առաջին մեթոդը տեղադրում է bash- ի թարգմանիչ, որը վերցնում է helloworld.sh- ը որպես ներդրում եւ աշխատում է այն, ինչ անել դրա հետ: Bash- ի թարգմանիչն արդեն գործելու թույլտվություն ունի եւ պարզապես պետք է սցենարի մեջ հրամանները գործադրի:

Երկրորդ մեթոդը թույլ է տալիս օպերացիոն համակարգը մշակել այն, ինչ անել սցենարի հետ, եւ դրա համար անհրաժեշտ է իրականացնել գործադիր բիթ `իրականացնելու համար:

Վերը նշված սցենարը լավ էր, բայց ինչ է պատահում, եթե ցանկանում եք ցուցադրական նշաններ ցուցադրել:

Դրանց հասնելու տարբեր եղանակներ կան: Օրինակ, դուք կարող եք ճոճանակ առաջադրել նախքան մեջբերման նշանները հետեւյալը.

echo \ "բարեւ աշխարհ \"

Դա կբերի արտադրության «բարեւ աշխարհ»:

Սպասեք մեկ րոպե, չնայած, եթե ուզում եք ցուցադրել «բարեւ աշխարհ»:

Դե դուք կարող եք փախչել փախուստի նիշերից

echo \\ "\" բարեւ աշխարհ \\ "\"

Դա կհանգեցնի «Բարեւ աշխարհ» արտադրանքի:

Այժմ ես գիտեմ, թե ինչ եք մտածում: Բայց ես իսկապես ցանկանում եմ ցուցադրել \\ "բարեւ աշխարհ \\" \ "

Օգտագործելով echo բոլոր այս փախուստի կերպարները կարող են շատ հիմարություն. Կա այլընտրանքային հրաման, որը կարող եք օգտագործել printf անունով:

Օրինակ:

printf '% s \ n' '\\ "\" Բարեւ աշխարհ \\ "\" "

Նշենք, որ տեքստը, որը մենք ցանկանում ենք ցուցադրել, գտնվում է միայնակ մեջբերումների միջեւ: Printf հրամանը տեքստի է ձեր սցենարից: % S- ը նշանակում է, որ այն ցուցադրելու է տողը, \ n թողարկում է նոր գիծ:

Ամփոփում

Մենք մասամբ չենք ծածկել շատ հիմքեր, բայց հուսով եմ, որ ձեր առաջին սցենարն աշխատում է:

Հաջորդ մասում մենք կներկայացնենք Բարելավված աշխարհի սցենարի բարելավման տարբեր գույներով տեքստը ցուցադրելու համար, ընդունեք եւ կարգավորեք ներածման պարամետրերը, փոփոխականները եւ մեկնաբանեք ձեր կոդը: