Kas ir bash skripts?

What Is Bash Script



Vai esat kādreiz dzirdējuši, ka tēvs jums saka paņemt glāzi ūdens? Jums ir izvēle pateikt Nē, bet datoriem nav šīs izvēles. Datori darīs tieši to, ko jūs viņiem teiktu. Bash ir tikai apvalks, kas ļauj sazināties ar datoru un ļauj tam dot norādījumus. Skripts būtībā ir tikai instrukciju kopums, kas datoram tiek dots dažādu nozīmīgu uzdevumu veikšanai. Skripts palīdz automatizēt dažādus uzdevumus un greznību, lai sasniegtu rezultātus ātrāk nekā parastā procedūra. Parasti terminālī jūs rakstāt pamata vai iepriekšēju bash komandu, un tā to izpilda uzreiz. Bash skriptos jūs varētu dot vairākas instrukcijas vai komandas vienlaikus, un dators tās izpildītu tikai tad, kad izpildītu skriptu. Īsumā, vienu bash komandu var izpildīt terminālī, bet, lai vienlaikus izpildītu vairāku komandu kombināciju, jums ir jāizveido bash skripts.

Kāpēc bash ir noderīgs un kam tas ir noderīgs?

Ja vēlaties vairāk kontrolēt savu OS un vēlaties veikt dažādus ar operētājsistēmu saistītus uzdevumus, jūsu ceļš ir bash. Ar bash mēs atsaucamies ne tikai uz skriptu valodu, bet arī uz Linux operētājsistēmas komplektācijā iekļautajiem rīkiem. Katram Linux rīkam ir savs darbs, un katrs individuāli veic citu uzdevumu. Bash ir patiešām noderīgs, ja jums ir jāapvieno visi šie rīki un jāsavieno kopā, lai tie visi darbotos harmonijā, lai paveiktu uzdevumu, kuru citādi ir patiešām grūti izdarīt. Piemēram, visu, kam ir kāda saistība ar Linux OS, var izdarīt arī citās programmēšanas valodās, piemēram, Python vai Perl, taču ir ļoti grūti izpildīt dažādus ar OS saistītus uzdevumus. Vienkāršs, melnbalts un vienkāršākais veids, kā kaut ko darīt saistībā ar Linux OS, ir izmantot bash. Ikvienam, kurš vēlas veikt uzdevumus, kas ietver Linux OS rīkus (piemēram, ls, cd, cat, touch, grep utt.), Viņam patiešām ir noderīgi mācīties bash, nevis jebkuru citu programmēšanas valodu.







Kā Bash salīdzina ar citām programmēšanas valodām?

Ja mēs runājam par bash, tad mēs zinām, ka bash nav universāla programmēšanas valoda, bet gan komandrindas tulks. Bash patiešām ir noderīgs, lai veiktu uzdevumus, kas saistīti ar dažādiem rīkiem un procesiem, ar spēju apvienot dažādus procesus kopā un likt tiem visiem strādāt viena mērķa sasniegšanai. Bash ir patiešām ērts, ja runa ir par ieeju un izvadi un to manipulēšanu, kas ir patiešām grūti izdarāms citās vispārējas nozīmes programmēšanas valodās, piemēram, python, C utt. Tomēr, ja runa ir par datu struktūrām un sarežģītiem uzdevumiem, piemēram, manipulējot ar sarežģītiem datiem, bash nevar tikt galā ar šādiem uzdevumiem, un mums ir jāmeklē tādas programmēšanas valodas kā Python, Perl, C utt. Tomēr rīku palaišanai varat izmantot bash vai apvienot šos rīkus kopā, lai tie darbotos efektīvi. Tas ir kā raķetes būvēšana, ja ņemam vērā šo metaforu, programmēšanas valodas palīdzēs jums izveidot raķeti, bet bash palīdzēs vadīt raķeti un palīdzēs noteikt tās virzienu un palīdzēs nolaisties uz Mēness vai Marsa.



Kā izveidot un palaist bash skriptus?

Lai izveidotu bash skriptu, vispirms ir jāizveido teksta fails ar paplašinājumu .sh faila nosaukuma beigās. Izmantojot termināli, varat izveidot skripta failu bash.



$pieskartiesskripts.sh


Kad esat ierakstījis iepriekš minēto komandu, nospiediet taustiņu Enter un pašreizējā darba direktorijā tiks izveidots bash skripta fails. Bet tas tā nav, mēs esam izveidojuši skriptu failu, bet mums ir jāveic noteiktas darbības, lai pabeigtu skriptu un to palaistu. Pirmkārt, atveriet skriptu failu nano redaktorā vai gedit un pirmajā rindā ierakstiet:





#!/bin/bash


Šī ir standarta pirmā rinda katram bash skriptu failam, kas palīdz to atpazīt kā bash skriptu. Jebkurš skripts, kura pirmajā rindā nav #!/Bin/bash, netiks uzskatīts par bash skriptu, tāpēc noteikti pievienojiet šo rindu katra skripta augšdaļai. Kad esat pievienojis šo rindu, tagad varat sākt rakstīt skriptā. Piemēram, es šeit uzrakstītu vienkāršu atbalss komandu:

$izmest ārāŠī ir LinuxHint, labākā mācību platformapriekšBash


Kad esat uzrakstījis šo komandu, tagad varat turpināt to saglabāt un atgriezties savā terminālī. Savā terminālī ierakstiet:



$ls -uz


Jūs varat redzēt “script.sh”, kas uzrakstīts baltā krāsā, kas ir zīme, ka skripts ir neizpildāms fails, jo izpildāmie faili parasti ir zaļā krāsā. Tālāk apskatiet kreiso pusi, kur mēs varētu redzēt tādu modeli kā -rw -r – r–, kas parāda, ka fails ir tikai lasāms un rakstāms.
Pirmā daļa, kas satur “rw”, ir atļaujas īpašniekam, iespējams, pašreizējam lietotājam.

Otrā daļa, kas satur “r”, ir atļauja grupai, kurā mums ir vairāki lietotāji.

Lai gan trešā daļa, kas satur “r”, ir atļauja sabiedrībai, kas nozīmē, ka ikvienam var būt šīs atļaujas minētajam failam.

“R” apzīmē lasīšanas atļaujas, “w” - rakstīšanas atļaujas, “x” nozīmē izpildāmās atļaujas. Skaidrs, ka mēs neredzam x pret “script.sh”. Lai pievienotu izpildāmās atļaujas, ir divi veidi, kā to izdarīt.

1. metode

Šajā metodē jūs varētu uzrakstīt vienkāršu chmod komandu ar “+x”, un tā pievienotu izpildāmās atļaujas.

$chmod+ x skripts.sh


Tomēr tas nav visefektīvākais veids, kā piešķirt izpildāmās atļaujas, jo tas dod izpildāmās atļaujas ne tikai īpašniekam, bet arī grupai un sabiedrībai, ko mēs drošības apsvērumu dēļ noteikti nevēlamies. Paskaties:

2. metode

Izmantojot šo metodi, varat izmantot ciparus, lai diktētu faila atļaujas. Pirms mēs pie tā ķeramies, es gribētu sniegt jums īsu priekšstatu par to, ko šie skaitļi nozīmē un kā jūs varat tos izmantot, lai manipulētu ar atļaujām.
lasīt = 4
rakstīt = 2
izpildīt = 1
Atļauju numuri būtu trīs cipari aiz komandas chmod, un katrs cipars apzīmē īpašnieka, grupas un citu (publiski pieejamu) atļaujas. Piemēram, lasīšanas, rakstīšanas un izpildes atļauju piešķiršana īpašniekam un lasīšanas atļaujas grupai un citiem būtu aptuveni šāda:

$chmod 744skripts.sh


Ja jūs varētu pamanīt, tad jūs saprastu, ka esam pievienojuši īpašniekam lasīšanas, rakstīšanas un izpildes ciparus pirmajā ciparā kā 4+2+1 = 7, un grupai un citiem mēs izmantojam lasāmo ciparu ti, 4.

Palaidiet bash skriptu

Tagad beidzot esam sasnieguši atzīmi, kurā varam palaist bash skriptu. Lai palaistu savu bash skriptu, jums jāpārliecinās, ka atrodaties pašreizējā darba direktorijā, kurā atrodas jūsu skripts. Tas nav obligāti, taču tādā veidā tas ir viegli, jo jums nav jāraksta viss ceļš. Kad esat to izdarījis, tagad dodieties uz priekšu un ierakstiet terminālī ./nameofscript.sh. Mūsu gadījumā skripta nosaukums ir “script.sh”, tāpēc mēs rakstītu:

$./skripts.sh

3 vienkārši Bash Script piemēri

Labdien, LinuxHint
Pirmkārt, pašreizējā darba direktorijā mēs izveidosim bash failu:

$nanoF_script.sh


Faila iekšpusē jums jāraksta:

#!/bin/bash
izmest ārā 'Sveiki Linux padoms'


Kad esat to uzrakstījis, tagad mēģiniet nospiest taustiņu kombināciju Ctrl+O, lai rakstītu faila izmaiņas, un, ja vēlaties saglabāt nosaukumu, nospiediet taustiņu Enter, pretējā gadījumā rediģējiet nosaukumu un pēc tam nospiediet taustiņu Enter. Tagad nospiediet Ctrl+X, lai izietu no nano redaktora. Tagad pašreizējā direktorijā jūs redzētu failu ar nosaukumu F_script.sh.
Lai palaistu šo failu, varat mainīt tā atļaujas, lai tas būtu izpildāms, vai arī varat rakstīt:

$bashF_script.sh


Atbalsta komanda
Kad mēs runājam par komandu echo, to vienkārši izmanto, lai izdrukātu gandrīz visu, ko vēlaties izdrukāt, ja vien tas ir rakstīts pēdiņās. Parasti, izpildot atbalss komandu bez karoga, tā atstāj līniju un pēc tam izdrukā izvadi. Piemēram, ja mums ir skripts:

#!/bin/bash
izmest ārā 'Drukāt nākamajā rindā'

Pēc saglabāšanas, ja mēs to palaižam:

$bashF_script.sh


Ja mēs izmantojam karogu “-n” ar atbalsi, tas tiek drukāts uz tās pašas līnijas.

#!/bin/bash
izmest ārā -n 'Drukāt uz vienas līnijas'

Pēc saglabāšanas, ja mēs to palaižam:

$bashF_script.sh


Līdzīgi, ja mēs pēdiņās lietojam “ n” vai “ t”, tas tiek drukāts tāds, kāds tas ir.

#!/bin/bash
izmest ārā ' nDrukāt uz ttā pati līnija n'


Tomēr, ja mēs izmantojam karodziņu “-e”, tas viss ne tikai pazūd, bet arī attiecas uz n un t, un jūs varētu redzēt izmaiņas izvadā zemāk:

#!/bin/bash
izmest ārā -Un ' nDrukāt uz ttā pati līnija n'


Komentāri BASH
Komentārs ir rinda, kas datoram nav svarīga. Visu, ko rakstāt kā komentāru, dators anulē vai ignorē, un tas neietekmē rakstīto kodu. Komentāri parasti tiek uzskatīti par noderīgāku veidu programmētājam, lai saprastu koda loģiku, lai, kad viņš atgriežas pie koda gabalu pārstrādes, šie komentāri varētu viņam atgādināt loģiku un iemeslus, kāpēc viņš ir rakstījis kodu noteiktā veidā. Komentārus var izmantot arī citi programmētāji, kuri varētu vēlēties veikt izmaiņas kodā. Ja esat uzrakstījis koda gabalu un nevēlaties to noņemt, bet vēlaties redzēt izvadi bez konkrētā koda, tad varat komentēt šo konkrēto koda daļu un turpināt. Jūsu programma darbosies lieliski, un jūs gūsit labus rezultātus, kamēr šis papildu kods joprojām ir jūsu skriptā, taču komentāru dēļ tas nav efektīvs. Ikreiz, kad vēlaties vēlreiz izmantot šo koda gabalu, dodieties uz priekšu un noņemiet komentārus, un jums ir labi iet.
Ir divi veidi, kā rakstīt komentārus bash; viens veids ir rakstīt vienas rindas komentārus, bet otrs veids-vairāku rindu komentāru rakstīšanai.

Atsevišķas rindas komentāri
Vienas rindas komentāros mēs izmantojam “#” zīmi, kas palīdz komentēt visu rindu. Viss, kas rakstīts rindā, kam seko “#”, tiks uzskatīts par komentāru, un, izpildot skriptu, tam nebūs reālas vērtības. Šo vienas rindas komentāru var izmantot, lai paziņotu koda loģiku un izpratni kādam, kam ir piekļuve kodam.

#!/bin/bash
izmest ārā -Un ' nDrukāt uz ttā pati līnija n'
#Šis skripts palīdz mums piemērot /kombināciju /n un /t



Vairāku rindu komentāri
Pieņemsim, ka vēlaties komentēt simt rindas savā skriptā. Tādā gadījumā jums būs grūti izmantot vienas rindas komentārus. Jūs nevēlaties tērēt laiku, liekot # uz katras rindas. Mēs varam izmantot “:” un pēc tam “jebkādus komentārus”. Tas palīdzētu jums komentēt vairākas rindas, vienkārši ierakstot 3 simbolus, kas ir ērti un noderīgi.

#!/bin/bash ”
: “Šis ir skripts, kas pārliecinās
n un t darbojas un tiek lietots
iekšāveids, kā mums ir vajadzīgā produkcija ”
izmest ārā -Un ' nDrukāt uz ttā pati līnija n'



Apskatiet 30 Bash skriptu piemērus vietnē Linuxhint.com:

30 Bash Script piemēri

6 vissvarīgākās nodarbības bash skriptos

1. Nosacījuma paziņojums
Nosacījuma paziņojums ir ļoti noderīgs rīks lēmumu pieņemšanā. To plaši izmanto programmēšanas valodās. Biežāk mums ir jāpieņem lēmumi, pamatojoties uz noteiktiem nosacījumiem. Nosacījuma paziņojums novērtē doto nosacījumu un pieņem lēmumu. Bash mēs izmantojam arī nosacījuma paziņojumu, tāpat kā jebkuru citu programmēšanas valodu. Nosacījuma paziņojuma sintakse, izmantojot bash, nedaudz atšķiras no citām programmēšanas valodām. Ja nosacījums ir visbiežāk izmantotais nosacījuma paziņojums bash un citās vispārējas nozīmes programmēšanas valodās. Ja nosacījums novērtē doto nosacījumu un pieņem lēmumu. Doto nosacījumu sauc arī par testa izteiksmi. Ir vairāki veidi, kā izmantot nosacījumu if bash. Ja nosacījums tiek izmantots ar citu bloku. Gadījumā, ja dotais nosacījums ir patiess, tad tiek izpildīti paziņojumi bloka if iekšpusē, pretējā gadījumā tiek izpildīts cits bloks. Ir vairāki veidi, kā izmantot Bash nosacījuma paziņojumu, kas ir šādi:

  1. Ja paziņojums
  2. Ja citāds paziņojums
  3. Ligzdotais paziņojums
  4. If elif paziņojums

Ja paziņojums
Ja paziņojums novērtē tikai doto nosacījumu, ja dotais nosacījums ir patiess, tad paziņojumi vai komandas, kas atrodas bloka iekšpusē, tiek izpildīti, pretējā gadījumā programma tiek pārtraukta. Bash, ja nosacījums sākas ar atslēgvārdu if un beidzas ar fi atslēgvārdu. Pēc tam atslēgvārds tiek izmantots, lai definētu paziņojumu vai komandu bloku, kas tiek izpildīts, ja ir izpildīts kāds nosacījums. Deklarēsim mainīgo un izmantosim nosacījumu if, lai novērtētu mainīgā vērtību, vai tā ir lielāka par 10 vai nē. -Gt tiek izmantots, lai novērtētu nosacījumu, kas lielāks par, savukārt, -lt tiek izmantots, lai novērtētu nosacījumu, kas ir mazāks par nosacījumu.

#!/bin/bash
KUR=100
#deklarējot nosacījumu if
ja [ $ VAR -gt 10 ]
tad
izmest ārā 'The$ VARir lielāks par 10 '
#beidzas nosacījums if
būt


Ja citāds paziņojums
Ja citāds paziņojums tiek izmantots arī kā nosacījums. Paziņojumi vai komandas pēc nosacījuma if tiek izpildīti, ja dotais nosacījums ir patiess. Pretējā gadījumā bloks else tiek izpildīts, ja dotais nosacījums nav patiess. Citam blokam seko bloks if un tas sākas ar atslēgvārdu else.

#!/bin/bash
KUR=7
#deklarējot nosacījumu if
ja [ $ VAR -gt 10 ]
tad
izmest ārā 'The$ VARir lielāks par 10 '
#deklarēšanas cits bloks
citādi
izmest ārā 'The$ VARir mazāks par 10 '
#beidzas nosacījums if
būt


Izmantojot nosacījumu if, var novērtēt vairākus nosacījumus. Mēs varam izmantot un operatoru (&) un vai operatoru (II), lai novērtētu vairākus nosacījumus vienā paziņojumā.

#!/bin/bash
KUR=divdesmit
#deklarējot nosacījumu if
ja [[ $ VAR -gt 10 && $ VAR -st 100 ]]
tad
izmest ārā 'The$ VARir lielāks par 10 un mazāks par 100 '
#deklarēšanas cits bloks
citādi
izmest ārā 'Nosacījums neatbilst'
#beidzas nosacījums if
būt


Ligzdotais paziņojums
Ligzdotajā if paziņojumā if paziņojumā ir if paziņojums. Pirmais, ja tiek novērtēts apgalvojums, ja tas ir patiess, tad otrs, ja tiek novērtēts paziņojums.

#!/bin/bash
KUR=divdesmit
#deklarējot nosacījumu if
ja [[ $ VAR -gt 10 ]]
tad
#ja nosacījums iekšpusē citā, ja vienojas
ja [ $ VAR -st 100 ]
tad
izmest ārā 'The$ VARir lielāks par 10 un mazāks par 100 '
#deklarēšanas cits bloks
citādi
izmest ārā 'Nosacījums neatbilst'
#beidzas nosacījums if
būt
citādi
izmest ārā 'The$ VARir mazāks par 10 '
būt


If elif paziņojums
Ja elifa paziņojums tiek izmantots, lai novērtētu vairākus nosacījumus. Pirmais nosacījums sākas ar bloku if, bet pārējiem nosacījumiem seko atslēgvārds elif. Apskatīsim iepriekšējo mainīgā skaitļa piemēru un mūsu bash skriptā ieviesīsim if elif paziņojumu. Eq tiek izmantots kā vienāds operators.

#!/bin/bash
KUR=divdesmit
#deklarējot nosacījumu if
ja [[ $ VAR -ekv 1 ]]
tad
izmest ārā 'Mainīgā vērtība ir vienāda ar 1'
elifs [[ $ VAR -ekv 2 ]]
tad
izmest ārā 'Mainīgā vērtība ir vienāda ar 2'
elifs [[ $ VAR -ekv 3 ]]
tad
izmest ārā 'Mainīgā vērtība ir vienāda ar 2'
elifs [[ $ VAR -gt 5 ]]
tad
izmest ārā 'Mainīgā vērtība ir lielāka par 5'
būt


2. Cilpas
Cilpas ir jebkuras programmēšanas valodas būtiska un būtiska sastāvdaļa. Atšķirībā no citām programmēšanas valodām cilpas tiek izmantotas arī Bash, lai atkārtoti veiktu uzdevumu, līdz dotais nosacījums ir patiess. Cilpas ir atkārtotas, tās ir lielisks līdzeklis līdzīga veida uzdevumu automatizēšanai. Cilpa for, kamēr cilpa un līdz cilpa tiek izmantota Bash.
Apspriedīsim šīs cilpas pa vienam.

Kamēr cilpa
Cikla cikls atkārtoti izpilda tos pašus paziņojumus vai komandas. Tas novērtē nosacījumu un izpilda paziņojumus vai komandas, līdz nosacījums ir patiess.
Šī ir pamata sintakse, izmantojot cilpu while, izmantojot Bash.

Kamēr [nosacījums vai testa izteiksme]
darīt
paziņojumi
darīts

Ieviesīsim faila script.sh cilpu while. Mums ir mainīgais VAR, kura vērtība ir vienāda ar nulli. Cikla ciklā mēs esam izvirzījuši nosacījumu, ka ciklam jādarbojas, līdz VAR vērtība ir mazāka par 20. Mainīgā vērtība tiek palielināta par 1 pēc katras atkārtojuma. Tātad šajā gadījumā cilpa sāks darboties, līdz mainīgā vērtība ir mazāka par 20.

#!/bin/bash
KUR=0
kamēr [ $ VAR -st divdesmit ]
darīt
izmest ārā 'Mainīgā pašreizējā vērtība ir$ VAR'
#vērtības palielināšana par 1 VAR
KUR= $((VAR +1))
darīts


Par cilpu
For cilpa ir visbiežāk izmantotā cilpa katrā programmēšanas valodā. To izmanto, lai izpildītu atkārtotu uzdevumu. Tas ir labākais veids, kā veikt atkārtotus uzdevumus. Deklarēsim for for mūsu script.sh failā un izmantosim to atkārtota uzdevuma veikšanai.

#!/bin/bash
KUR=0
priekš (( i==0; i<divdesmit; es ++))
darīt
izmest ārā 'Labdien un laipni lūdzam linuxhint'
#palielinot mainīgo i
i= $((es+1))
darīts
izmest ārā 'Tas ir cikla beigas'


Cilpa līdz
Cits cilpas veids, kas tiek izmantots Bash, ir līdz cilpai. Tas arī atkārtoti veic vai izpilda vienu un to pašu komplektu. Cilpa līdz novērtē nosacījumu un sāk izpildīt, līdz dotais nosacījums ir nepatiess. Cilpa līdz beidzas, kad dotais nosacījums ir patiess. Cilpas līdz sintakse ir šāda:

līdz [nosacījums]
darīt
paziņojumi
komandas
darīts

Ieviesīsim mūsu skripta.sh failā ciklu līdz. Cilpa līdz tiks palaista, ja vien nosacījums nav nepatiess (mainīgā vērtība ir mazāka par 20)

#!/bin/bash
KUR=0
līdz [ $ VAR -gt divdesmit ]
darīt
izmest ārā 'Labdien un laipni lūdzam linuxhint'
#palielinot mainīgo i
KUR= $((VAR +1))
darīts
izmest ārā “Tas ir cikla beigas”


3. Lasīšana no lietotāja un rakstīšana uz ekrāna
Bash dod iespēju lietotājam terminālī ievadīt virknes vērtību vai datus. Lietotāja ievadīto virkni vai datus var nolasīt no termināļa, tos var saglabāt failā un drukāt terminālī. Bash failā lietotāja ievadīto informāciju var nolasīt, izmantojot lasīt atslēgvārdu, un mēs to glabājam mainīgā. Mainīgo saturu var parādīt terminālī, izmantojot komandu echo.

#!/bin/bash
izmest ārā 'Uzrakstiet kaut ko terminālī'
#ievadītās vērtības saglabāšana VAR
lasītKUR
izmest ārā 'Jūs ievadījāt:$ VAR'


Ar lasīšanas komandu var izmantot vairākas iespējas. Visbiežāk izmantotās iespējas ir -p un -s. -P parāda uzvedni, un ievadi var veikt vienā rindā. -S uztver informāciju klusuma režīmā. Ievades rakstzīmes tiek parādītas terminālī. Ir lietderīgi ievadīt sensitīvu informāciju, piemēram, paroles.

#!/bin/bash
lasīt -lpp 'Ievadiet e -pastu:'e -pastu
izmest ārā 'Ievadi paroli'
lasīt -sparole


4. Teksta failu lasīšana un rakstīšana
Teksta faili ir būtiska datu lasīšanas un rakstīšanas sastāvdaļa. Dati tiek īslaicīgi saglabāti teksta failos, un tos var viegli nolasīt no teksta faila. Pirmkārt, apspriedīsim datu ierakstīšanu teksta failā, un pēc tam mēs apspriedīsim datu lasīšanu no teksta failiem.

Teksta failu rakstīšana
Datus var ierakstīt failā dažādos veidos:

  • Izmantojot taisnleņķa kronšteinu vai zīmi, kas lielāka par (>)
  • Izmantojot dubulto taisnleņķa kronšteinu (>>)
  • Izmantojot komandu tee

Labā eņģeļa kronšteina zīme (>), lai ierakstītu datus
tas ir visbiežāk izmantotais veids, kā ierakstīt datus teksta failā. Mēs ierakstām datus un pēc tam ievietojam zīmi>. Zīme> norāda uz teksta failu, kurā mums jāsaglabā dati. Tomēr tas nepievieno failu, un iepriekšējie faila dati tiek pilnībā aizstāti ar jaunajiem datiem.

#!/bin/bash
#lietotājs ievada teksta faila nosaukumu
lasīt -lpp 'Ievadiet faila nosaukumu:'FILE
#lietotājs ievada datus, kas jāglabā teksta failā
lasīt -lpp 'Rakstiet datus, ko ievadīt failā:'DATI
#datu glabāšana teksta failā
#> norāda uz faila nosaukumu.
izmest ārā $ DATA > $ FILE


Labā eņģeļa kronšteina zīme (>>), lai ierakstītu datus
>> tiek izmantots jebkuras komandas izvades saglabāšanai failā. Piemēram, komanda ls -al parāda faila saturu un atļaujas noteiktā direktorijā. >> saglabās izvadi failā.

#!/bin/bash
#lietotājs ievada teksta faila nosaukumu
lasīt -lpp 'Ievadiet faila nosaukumu:'FILE
#komandu izvades saglabāšana failā
ls -uz >> $ FILE



Komandas tee izmantošana datu ierakstīšanai teksta failā
Komanda tee Bash tiek izmantota, lai ierakstītu komandas izvadi teksta failā. Tas izdrukā komandas izvadi terminālī un saglabā to teksta failā.

#!/bin/bash
#lietotājs ievada teksta faila nosaukumu
lasīt -lpp 'Ievadiet faila nosaukumu:'FILE
#komandu izvades saglabāšana failā, izmantojot komandu tee
ls -uz | tee $ FILE


Komanda tee pēc noklusējuma pārraksta faila esošos datus. Tomēr faila pievienošanai var izmantot opciju -a ar komandu tee.

#!/bin/bash
#lietotājs ievada teksta faila nosaukumu
lasīt -lpp 'Ievadiet faila nosaukumu:'FILE
#komandu izvades saglabāšana failā, izmantojot komandu tee
ls -uz | tee -uz $ FILE


Teksta failu lasīšana
The kaķis komandu izmanto, lai nolasītu datus no faila. Šim nolūkam to izmanto visbiežāk. Tas vienkārši izdrukā termināļa teksta faila saturu. Izdrukāsim faila saturu vai datus terminālī, izmantojot kaķis komandu.

#!/bin/bash
#lietotājs ievada teksta faila nosaukumu
lasīt -lpp 'Ievadiet faila nosaukumu:'FILE
#lasot datus no teksta faila
kaķis $ FILE


5. Citu programmu palaišana no bash
Bash dod tiesības palaist citas programmas no Bash skripta. Mēs izmantojam komandu exec, lai palaistu citas programmas no Bash. Komanda exec aizstāj iepriekšējo procesu ar pašreizējo procesu un palaiž pašreizējo programmu. Piemēram, mēs varam atvērt nano, gedit vai vim redaktoru no bash skripta.

#!/bin/bash
#darbojas nano redaktors no Bash
izpildītājs nano

#!/bin/bash
#skriešanas gedit no Bash
izpildītājsgedit

Līdzīgi mēs varam palaist pārlūka lietojumprogrammu arī no Bash. Palaidīsim pārlūkprogrammu Mozilla Firefox.

#!/bin/bash
#darbojas firefox
izpildītājsfirefox


Turklāt mēs varam palaist jebkuru programmu no Bash, izmantojot komandu exec.

6. Komandrindas apstrāde
Komandrindas apstrāde attiecas uz terminālī ievadīto datu apstrādi. Komandrindas dati tiek apstrādāti daudziem mērķiem, ti, lasot lietotāja ievadīto informāciju, nepietiekami novērtējot komandas un lasot argumentus. Iepriekš mēs esam apsprieduši lasīšanas komandu. Lasīšanas komanda tiek izmantota arī komandrindas apstrādei. Šajā sadaļā mēs apspriedīsim komandrindas argumentu apstrādi. Bash mēs varam apstrādāt argumentus, kas tiek nodoti vai rakstīti terminālī. Argumenti tiek apstrādāti tādā pašā veidā, kā tie tiek nodoti. Tāpēc to sauc par pozicionālajiem parametriem. Atšķirībā no citām programmēšanas valodām, Bash argumentu indeksēšana sākas ar 1. Argumentu lasīšanai tiek izmantota dolāra zīme ($). Piemēram, 1 ASV dolārs nolasa pirmo argumentu, 2 dolārs - otro argumentu utt. Argumentus var analizēt dažādu iemeslu dēļ, piemēram, lai saņemtu informāciju no lietotāja.

#!/bin/bash
izmest ārā 'Ievadiet savu vārdu'
#pirmā argumenta apstrāde
izmest ārā 'Vārds:' $ 1
#apstrādājot otro argumentu
izmest ārā 'Otrais vārds:'2 ASV dolāri
#apstrādājot trešo argumentu
izmest ārā 'Uzvārds:' 3 ASV dolāri
izmest ārā 'Pilnais vārds:' $ 1 2 ASV dolāri 3 ASV dolāri


Datu lasīšana no termināļa, izmantojot lasīšanu, un argumentu parsēšana ir vispiemērotākie komandrindas apstrādes piemēri.

Bash vēsture un salīdzinājums ar citām čaumalām

Bash tagad ir uz UNIX un Linux balstītu sistēmu būtiska sastāvdaļa. Bourne Shell sākotnēji izstrādāja Stīvens Borns. Stīvena Burna apvalka paredzētais mērķis bija pārvarēt tajā laikā jau esošo čaumalu ierobežojumus. Pirms Bourne Shell UNIX ieviesa Thompson Shell. Tomēr Thompson apvalks bija ļoti ierobežots skripta apstrādē. Lietotāji nevarēja palaist pietiekamu skripta daudzumu. Lai pārvarētu visus šos Thompson apvalka ierobežojumus, tika ieviests Bourne Shell. Tas tika izstrādāts Bells Lab. 1989. gadā Braiens Fokss radīja revolūciju Bourne apvalkā, pievienojot daudzas citas funkcijas, un nosauca to par Bourne Again Shell (BASH).

Korpusa nosaukums Gads Platforma Apraksts Salīdzinājums ar BASH
Tompsona apvalks 1971. gads UNIX Skripta automatizācija bija ierobežota. Lietotājs var veikt tikai nelielu skriptu daudzumu. BASH pārvar Thompson apvalka ierobežojumus, un lietotājs var rakstīt lielos skriptus.
Bourne Shell 1977. gads UNIX Tas ļauj mums rakstīt un palaist milzīgu daudzumu skriptu. Bourne Shell nenodrošina komandu redaktoru un lielāku saīsnes iespēju skaitu. BASH nodrošina dizaina uzlabojumus kopā ar komandu redaktoru.
POSIX apvalks 1992. gads POSIX POSIX apvalks ir pārnēsājams. Tas nodrošina daudz īsceļu un darba kontroli. BASH ir populārs tādu uzdevumu veikšanai, kuriem nav nepieciešama pārnesamība.
Z Shell 1990. gads UNIX Z Shell ir bagātīgs ar funkcijām. Tas ir ļoti spēcīgs apvalks un nodrošina tādas funkcijas kā komandu automātiskā pabeigšana, pareizrakstības labošana un automātiskā aizpilde. BASH trūkst dažu funkciju, ko nodrošina Z Shell.

Secinājums

BASH ir ļoti spēcīgs rīks, kas ļauj mums palaist komandas un skriptus. BASH skripts ļauj automatizēt ikdienas uzdevumus un komandas. BASH skripts ir vairāku komandu kombinācija. BASH fails beidzas ar paplašinājumu .sh. Pirms BASH skripta palaišanas mums jāatjaunina faila atļaujas un jānodrošina izpildāmā atļauja .sh failam. Šis raksts izskaidro BASH un BASH skriptus, izmantojot vienkāršus piemērus un svarīgas mācības. Turklāt tas apraksta BASH vēsturi un salīdzina tā īpašības ar dažādiem citiem spēcīgiem apvalkiem.