30 bash script Intervijas jautājumi un atbildes

30 Bash Script Interview Questions



Bash skripti ir ļoti noderīga un spēcīga programmēšanas valoda, ko galvenokārt izmanto, lai automatizētu manuālos uzdevumus. Darba meklētājam, kurš vēlas būt automatizācijas testētājs vai programmētājs, intervijā jāsaskaras ar dažiem bieži uzdotiem jautājumiem. Linux pastāv dažādi čaulas skriptu veidi. Viens no populārākajiem un visbiežāk izmantotajiem čaulas skriptiem ir Bourne Again Shell vai Bash. Šajā rakstā ir aprakstīti 30 svarīgi intervijas jautājumi un atbildes par bash skriptu valodu, lai sagatavotos darbam.

#01. Kas ir bash skripts?

Bash skripts ir čaulas programmēšanas valoda. Parasti no termināļa mēs izpildām daudzu veidu čaulas komandas, ierakstot katru komandu atsevišķi, kas prasa laiku un pūles. Ja mums atkal jāizpilda tās pašas komandas, tad mums ir jāizpilda visas komandas no termināļa vēlreiz. Bet, izmantojot bash skriptu, mēs varam saglabāt daudzus čaulas komandu paziņojumus vienā bash failā un izpildīt failu jebkurā laikā, izmantojot vienu komandu. Izmantojot pareizu bash skriptu, var veikt daudzus sistēmas administrēšanas uzdevumus, programmu instalēšanu, diska dublēšanu, žurnālu novērtēšanu utt.







#02. Kādas ir bash skriptu izmantošanas priekšrocības?

Bash skriptam ir daudz priekšrocību, kas aprakstītas zemāk:



  • To ir viegli lietot un iemācīties.
  • Daudzus manuālos uzdevumus, kas jāveic bieži, var veikt automātiski, rakstot bash skriptu.
  • Vairāku čaulas komandu secību var izpildīt ar vienu komandu.
  • Bash skriptu, kas rakstīts vienā Linux operētājsistēmā, var viegli izpildīt citā Linux operētājsistēmā. Tātad, tas ir pārnēsājams.
  • Atkļūdošana bash ir vieglāka nekā citās programmēšanas valodās.
  • Komandrindas sintakse un komandas, kas tiek izmantotas terminālī, ir līdzīgas bash skriptā izmantotajām komandām un sintaksei.
  • Bash skriptu var izmantot, lai izveidotu saiti ar citiem skriptu failiem.

#03. Miniet bash skriptu trūkumus

Tālāk ir minēti daži bash skripta trūkumi:



  • Tas darbojas lēnāk nekā citas valodas.
  • Nepareizs skripts var sabojāt visu procesu un radīt sarežģītu kļūdu.
  • Tas nav piemērots lielas un sarežģītas lietojumprogrammas izstrādei.
  • Tajā ir mazāk datu struktūras salīdzinājumā ar citām standarta programmēšanas valodām.

#04. Kāda veida mainīgie tiek izmantoti bash?

Bash skriptā var izmantot divu veidu mainīgos. Šie ir:

Sistēmas mainīgie
Mainīgos, kurus Linux operētājsistēma ir iepriekš definējusi un uztur, sauc par sistēmas mainīgajiem. Šāda veida mainīgos vienmēr izmanto ar lielajiem burtiem. Šo mainīgo noklusējuma vērtības var mainīt, pamatojoties uz prasībām.

`set`,` env` un ` printenv `komandas var izmantot, lai izdrukātu sistēmas mainīgo sarakstu.

Piemērs:





#!/bin/bash
# Drukāšanas sistēmas mainīgie

#Print Bash apvalka nosaukums
izmest ārā $ BASH

# Print Bash apvalka versija
izmest ārā $ BASH_VERSION

# Izdrukājiet mājas direktorijas nosaukumu
izmest ārā $ HOME

Lietotāja definēts mainīgais

Lietotāju izveidotos un uzturētos mainīgos sauc par lietotāja definētiem mainīgajiem. Tos sauc arī par vietējiem mainīgajiem. Šāda veida mainīgos var deklarēt, izmantojot mazos vai lielos burtus vai gan lielos, gan mazos burtus. Bet labāk ir izvairīties no visu lielo burtu izmantošanas, lai mainīgos mainītu no sistēmas mainīgajiem.
Piemērs:

#!/bin/bash

uz vienu=100
izmest ārā $ num

#05. Kā deklarēt un dzēst mainīgos bash?

Mainīgo var deklarēt bash pēc datu veida vai bez tā. Ja kāds bash mainīgais tiek deklarēts bez deklarēt komandu, tad mainīgais tiks uzskatīts par virkni. Bash mainīgais tiek deklarēts ar deklarēt komandu, lai definētu mainīgā datu tipu laika deklarēšanā.



–R , -i, -a, -A, -l, -u, -t un –X opcijas var izmantot ar deklarēt komandu deklarēt mainīgo ar dažādiem datu veidiem.

Piemērs:

#!/bin/bash

#Deklarēt mainīgo bez jebkāda veida
uz vienu=10

#Vērtības tiks apvienotas, bet netiks pievienotas
rezultāts=$ num+divdesmit
izmest ārā $ rezultāts

#Deklarēt mainīgo ar veselu skaitli
deklarēt -i uz vienu=10

#Vērtības tiks pievienotas
deklarēt -i rezultāts= skaits+divdesmit
izmest ārā $ rezultāts

nav iestatīts komanda tiek izmantota, lai noņemtu visus bash mainīgos. Pēc lietošanas mainīgais nebūs pieejams vai nav definēts nav iestatīts komandu.

Piemērs:

#!/bin/bash

lpp='Linux padoms'
izmest ārā $ str
nav iestatīts $ str
izmest ārā $ str

#06. Kā pievienot komentārus bash skriptā?

Vienas rindas un vairāku rindu komentārus var izmantot bash skriptā. ' # Simbols tiek izmantots vienas rindas komentāram. '<<’ simbols ar norobežotāju un ':' ar vienu (‘) tiek izmantoti vairāku rindu komentāru pievienošanai.

Piemērs:

#!/bin/bash
#Izdrukāt tekstu [Vienas rindiņas komentārs]
izmest ārā 'Bash programmēšana'
< Aprēķiniet summu
No diviem skaitļiem [daudzrindu komentārs]
Pievienot komentāru

uz vienu=25+35
izmest ārā $ num
:'
Apvienojiet divus
Virkņu dati [daudzrindu komentārs]
'

Stīga='Sveiki'
izmest ārā $ virkne'Pasaule'

#07. Kā jūs varat apvienot virknes bash skriptā?

Virkņu vērtības bash var kombinēt dažādos veidos. Parasti virkņu vērtības tiek apvienotas, saliekot kopā, bet bash ir arī citi veidi, kā apvienot virknes datus.

Piemērs:

#!/bin/bash
#Inicializējiet mainīgos
str1='PHP'
str2='Bash'
str3='Perl'

# Izdrukājiet virkni kopā ar atstarpi
izmest ārā $ str1 $ str2 $ str3

#Apvienojiet visus mainīgos un saglabājiet citā mainīgajā
lpp='$ str1,$ str2un$ str3'

#Apvienojiet citus virknes datus ar esošo virknes vērtību
str + ='ir skriptu valodas'

#Izdrukājiet virkni
izmest ārā $ str

#08. Kādas komandas tiek izmantotas, lai izdrukātu bash?

'atbalss' un 'printf' komandas var izmantot, lai izdrukātu bash. `atbalss komandu izmanto, lai izdrukātu vienkāršo izvadi un 'printf' komandu izmanto, lai izdrukātu formatētu izvadi.

Piemērs:

#!/bin/bash

#Izdrukājiet tekstu
izmest ārā 'Laipni lūdzam LinuxHint'
vietne='linuxhint.com'
#Izdrukājiet formatēto tekstu
printf '%s ir populāra emuāru vietne n' $ vietne

#09. Kā veikt ievadi no termināļa bash?

`lasīt` komanda tiek izmantota bash skriptā, lai saņemtu ievadi no termināļa.

Piemērs:

#!/bin/bash
#Izdrukāt ziņu
izmest ārā 'Ievadiet savu vārdu'
#Pieņemiet informāciju no lietotāja
lasītvārds
# Drukājiet $ name vērtību ar citu virkni
izmest ārā 'Jūsu vārds ir$ nosaukums'

#10. Kā lietot komandrindas argumentus bash?

Komandrindas argumentus lasa $ 1, $ 2, $ 3… $ n mainīgie. Izpildot bash skriptu, terminālā tiek nodrošinātas komandrindas argumentu vērtības. $ 1 tiek izmantots, lai izlasītu pirmo argumentu, 2 ASV dolāri tiek izmantots, lai izlasītu otro argumentu utt.

Piemērs:

#!/bin/bash
#Pārbaudiet, vai ir sniegts kāds arguments
ja [[ $ # -ekv 0 ]];tad
izmest ārā 'Netiek sniegti argumenti.'
Izeja 0
būt
#Saglabājiet pirmo argumenta vērtību
krāsa=$ 1
# Izdrukājiet argumentu ar citu virkni
printf 'Jūsu mīļākā krāsa ir %s n' $ krāsa

#11. Vai bash ir vāji drukāta valoda? Kāpēc?

Jā, bash tiek uzskatīta par vāji vai brīvi drukātu valodu, jo tai nav nepieciešams deklarēt datu veidu mainīgās deklarēšanas laikā. Visi bash mainīgie pēc noklusējuma tiek uzskatīti par virkni, un mainīgā veids tiks iestatīts, pamatojoties uz pašreizējo vērtību. Bash mainīgos ar datu tipiem var definēt, izmantojot deklarēt komandu ar konkrētu iespēju. Taču datu veidu definēšanas iespējas ir ierobežotas un neatbalsta visu veidu datus. Piemēram, peldēt datu tipu nevar deklarēt, izmantojot deklarēt komandu.

Piemērs:

#!/bin/bash

#$ MyVar datu tips pēc noklusējuma ir virkne
myVar=29

# Izdrukājiet mainīgo
izmest ārā $ myVar

# Deklarējiet veselu skaitļu mainīgo $ number ar vērtību 67
deklarēt -i numurs=67

#Izdrukājiet mainīgo
izmest ārā $ numurs

# Piešķiriet virknes datus ciparu mainīgajam. Radīsies šāda rinda
# sintakses kļūda un $ numura vērtība nemainīsies
numurs='Man patīk bash'
izmest ārā $ numurs

#12. Kā nolasīt otro vārdu vai kolonnu no katras faila rindas?

Faila otro vārdu vai kolonnu var izlasīt bash skriptā, viegli izmantojot dažādas bash komandas, piemēram, 'awk', 'sed' utt. Šeit tiek izmantota `awk` ir parādīts nākamajā piemērā.
Piemērs: Pieņemsim, ka failā course.txt ir šāds saturs, un mēs esam drukājuši tikai otro vārdu no katras šī faila rindas.

CSE201 Java programmēšana
CSE303 datu struktūra
CSE408 Unix programmēšana#!/bin/bash
# Šis skripts izdrukās katras rindas otro vārdu no faila course.txt.
# kaķa komandas izvade tiks nodota komandai awk, kas nolasīs otro vārdu
# no katras rindas.
izmest ārā ``kaķiscourse.txt| awk '{print $ 2}'``

#13. Kā deklarēt un piekļūt masīva mainīgajam bash?

Gan skaitliskos, gan asociatīvos masīvus atbalsta bash skripts. Masīva mainīgo var deklarēt ar komandu deklarēt un bez tās. -uz opcija tiek izmantota ar komandu deklarēt, lai definētu ciparu masīvu un -TO opcija tiek izmantota ar deklarēt paziņojumu, lai definētu asociācijas masīvu bash. Bez komandas deklarēt ciparu masīvu var definēt tikai bash.

Piemērs:

#!/bin/bash

# Deklarējiet vienkāršu ciparu masīvu
arr1=(CodeIgniter Laravel ReactJS)

# Izdrukājiet pirmā elementa vērtību $ arr1
izmest ārā $ {arr1 [0] {

# Deklarējiet ciparu masīvu, izmantojot komandu deklarēt
deklarēt -uz arr2=(HTML CSS JavaScript)

# Izdrukājiet otrā elementa vērtību $ arr2
izmest ārā $ {arr2 [1]}

# Deklarējiet asociatīvo masīvu, izmantojot deklarācijas paziņojumu
deklarēt -TO arr3=( [ietvars]= Laravel[SPS]= WordPress[Bibliotēka]= JQuery)

# Izdrukājiet $ arr3 trešā elementa vērtību
izmest ārā $ {arr3 [bibliotēka]}

Visiem masīva elementiem var piekļūt, izmantojot jebkuru cilpu vai simbolu “*” kā masīva indeksu.

#14. Kā nosacījuma paziņojumus var izmantot bash?

Visizplatītākais nosacījuma paziņojums lielākajā daļā programmēšanas valodu ir if-elseif-else paziņojums, apgalvojums. Sintakse ja-cits-cits paziņojums bash nedaudz atšķiras no citām programmēšanas valodām. ‘Ja’ paziņojumu var deklarēt divos veidos bash skriptā un visu veidu 'Ja' bloks ir jāaizver ar 'esi' . 'Ja' paziņojumu var definēt ar trešām iekavām vai pirmajām iekavām, piemēram, citām programmēšanas valodām.

Sintakse:
TO.

ja [stāvoklis];
tad
paziņojumi
būt

B.

ja [stāvoklis];tad
paziņojumi1
citādi
paziņojums, apgalvojums2
būt

C.

ja [stāvoklis];tad
paziņojums, apgalvojums1
elifs[stāvoklis];tad
paziņojums, apgalvojums2
….
citādi
paziņojums n
būt

Piemērs:

#!/bin/bash

# Piešķiriet vērtību $ n
n=30
# Pārbaudiet, vai $ n ir lielāks par 100 vai nē
ja [ $ n -gt 100 ];tad
izmest ārā '$ nir mazāks par 100 '
# Pārbaudiet, vai $ n id ir lielāks par 50 vai nē
elifs [ $ n -gt piecdesmit ];tad
izmest ārā '$ nir mazāks par 50 '
citādi
izmest ārā '$ nir mazāks par 50 '
būt

#15. Kā salīdzināt vērtības bash?

Vērtību salīdzināšanai bash var izmantot sešu veidu salīdzināšanas operatorus. Atkarībā no datu veida ir divi veidi, kā šos operatorus izmantot bash. Tie ir minēti zemāk.

Stīgu salīdzinājums Vesels skaitlis Salīdzinājums Apraksts
== -ekv To izmanto, lai pārbaudītu vienlīdzību
! = -dzimis To izmanto, lai pārbaudītu nevienlīdzību
< -st To izmanto, lai pārbaudītu, vai pirmā vērtība ir mazāka par otro vērtību
> -gt To izmanto, lai pārbaudītu, vai pirmā vērtība ir lielāka par otro vērtību vai nē
<= -viņi To izmanto, lai pārbaudītu, vai pirmā vērtība ir mazāka vai vienāda ar otro vērtību
> = -dot To izmanto, lai pārbaudītu, vai pirmā vērtība ir lielāka vai vienāda ar otro vērtību

Piemērs:

#!/bin/bash
# Inicializējiet $ n
n=130
vai='pat'
# Pārbaudiet, vai $ n ir lielāks vai vienāds ar 100, vai neizmantojat “–ge”.
ja [ $ n -dot 100 ];tad
izmest ārā '$ nir lielāks vai vienāds ar 100 '
citādi
izmest ārā '$ nir mazāks par 100 '
būt
# Pārbaudiet, vai $ n ir pāra vai nepāra, izmantojot “==” operatoru
ja (( $ o=='pat' ));tad
izmest ārā 'Skaitlis ir pat'
citādi
izmest ārā 'Skaitlis ir nepāra'
būt

#16. Kuru nosacījuma paziņojumu var izmantot kā alternatīvu bash paziņojumiem if-elseif-else?

'Lieta' paziņojumu var izmantot kā alternatīvu tp ja-ja-ja-ja paziņojums, apgalvojums. Sintakse priekš 'Lieta' paziņojums bash skriptos atšķiras no slēdzis citu programmēšanas valodu paziņojums. 'Lieta' bloku aizver 'Esac' paziņojums bash. Nē ' pārtraukums 'Paziņojums tiek izmantots iekšpusē' gadījumā ‘Bloks, lai pārtrauktu no bloka.

Sintakse:

gadījumā iekšā
Sakritības modelis1)komandas;;
Sakritības modelis2)komandas;;
……
Sakritības modelis n)komandas;;
esac

Piemērs:

#!/bin/bash
#Inicializējiet mainīgo $ biļeti
biļete=101
# Salīdziniet $ biļetes vērtību ar 23, 101 un 503
gadījumā $ biļete iekšā
2. 3)
# Drukājiet ziņojumu, ja vērtība ir 23
izmest ārā 'Jūs saņēmāt pirmo balvu';;
101)
# Drukājiet ziņojumu, ja vērtība ir 101
izmest ārā 'Jūs saņēmāt otro balvu';;
503)
# Drukājiet ziņojumu, ja vērtība ir 503
izmest ārā 'Jūs saņēmāt trešo balvu';;
*)
# Izdrukājiet ziņojumu, ja vērtība nesakrīt ar 23, 101 un 503
izmest ārā 'Atvainojiet, mēģiniet nākamreiz'
Izeja 0;;
esac

#17. Kāda veida cilpas var izmantot bash?

Bash skripts atbalsta trīs veidu cilpas. Šie ir kamēr, par un līdz cilpas. Cilpas bashā pārbauda stāvokli cilpas sākumā. Kamēr cilpa darbojas, līdz nosacījums paliek patiess un līdz cilpa darbojas, līdz nosacījums paliek nepatiess. Ir divi lietošanas veidi priekš cilpa. Viens ir vispārīgs priekš cilpa, kas satur trīs daļas un vēl viena in-in cilpa. Šo trīs cilpu pielietojums ir parādīts nākamajā piemērā.

Piemērs:

#!/bin/bash
# Inicializējiet $ n
n=5
# Aprēķiniet kvadrātu 5-1, izmantojot cilpu while
kamēr [ $ n -gt 0 ]
darīt
kv= $((n*n))
izmest ārā 'Kvadrāts$ nir$ kv'
((n-))
darīts

# Aprēķiniet kvadrātu 5-1, izmantojot cilpu
priekš (( i=5; i>0; es-))
darīt
kv= $((i*i))
izmest ārā 'Kvadrāts$ iir$ kv'
darīts

# Inicializējiet $ x
x=5

# Aprēķiniet kvadrātu 5-1, izmantojot ciklu
līdz [ x ASV dolāri -viņi 0 ]
darīt
kv= $((x*x))
izmest ārā 'Kvadrātsx ASV dolāriir$ kv'
((x-))
darīts

#18. Kā apakšprogrammas var deklarēt un izsaukt bash?

Bash funkciju vai procedūru sauc par apakšprogrammu. Apakšprogrammas deklarēšana un izsaukšana bash valodā atšķiras no citām valodām. Atšķirībā no citām standarta programmēšanas valodām apakšprogrammās nevar deklarēt nevienu argumentu. Bet vietējos mainīgos var definēt apakšprogrammā, izmantojot 'vietējais' atslēgvārds.

Piemērs:

#!/bin/bash
# Inicializējiet globālo mainīgo $ x un $ y
x=10
un=35

# Deklarējiet funkciju
myFunc() {
# Deklarējiet vietējo mainīgo $ x
vietējais x=piecpadsmit

# Piešķiriet globālo mainīgo $ y
un=25

# Aprēķiniet summu $ x un $ y
Ar= $((x + y))

# Izdrukājiet vietējā mainīgā $ x un globālā mainīgā $ y summu
izmest ārā 'Summax ASV dolāriun$ yvienāds ar$ z'
}

# Izsauciet funkciju
myFunc

# Izdrukājiet globālo mainīgo summu, $ x un $ y
izmest ārā 'Summax ASV dolāriun$ yvienāds ar$ z'

#19. Kā izgriezt un izdrukāt kādu virknes datu daļu bash?

Bash nav iebūvēta funkcija, piemēram, citās valodās, lai samazinātu virknes datu daļu. Bet, izmantojot parametru paplašināšanu, jebkuru virknes vērtību var izgriezt bash. Parametru paplašināšanā var definēt trīs daļas, atdalot tās ar kolu, lai izgrieztu jebkuru virknes datu daļu. Šeit pirmās divas daļas ir obligātas, bet pēdējā daļa nav obligāta. Pirmajā daļā ir galvenais virknes mainīgais, kas tiks izmantots griešanai, otrā daļa ir sākuma pozīcija, no kuras virkne tiks izgriezta, un trešā daļa ir griešanas virknes garums. Sākuma pozīcija jāskaita no 0 un garums jāskaita no 1 galvenās virknes, lai iegūtu griešanas vērtību.

Piemērs:

#!/bin/bash
# Inicializējiet virknes vērtību $ string
virkne='Python skriptu valoda'
# Izgrieziet virknes vērtību no 7. pozīcijas līdz virknes beigām
izmest ārā $ {string: 7}
# Izgrieziet virknes vērtību 9 rakstzīmes no 7. pozīcijas
izmest ārā $ {string: 7: 9}
# Izgrieziet virknes vērtību no 17 līdz 20
izmest ārā $ {string: 17: -4}

#20. Miniet dažus veidus, kā veikt aritmētiskās darbības bash?

Aritmētiskās darbības bash var veikt vairākos veidos. “Let”, “expr”, “bc” un dubultās kronšteini ir visizplatītākie veidi, kā veikt aritmētiskās darbības bash. Šo komandu lietojums ir parādīts nākamajā piemērā.

Piemērs:

#!/bin/bash
# Atņemšanas aprēķināšana, izmantojot izteiksmi un parametru paplašināšanu
var1= $( izteiksme 120-100 )
# izdrukājiet rezultātu
izmest ārā $ var1
# Aprēķiniet papildinājumu, izmantojot komandu let
ļaut var2=200+300
# Izdrukājiet rsult
izmest ārā $ var2
# Lai iegūtu rezultātu, aprēķiniet un izdrukājiet dalījuma vērtību, izmantojot “bc”
# ar daļēju vērtību
izmest ārā 'skala = 2; 44/7 ' | bc
# Aprēķiniet reizināšanas vērtību, izmantojot dubultās iekavas
var3= $(( 5*3 ))
# Izdrukājiet rezultātu
izmest ārā $ var3

#21. Kā pārbaudīt, vai direktorijs pastāv vai neizmanto bash?

Bash ir daudz testa komandu, lai pārbaudītu, vai fails vai direktorijs pastāv vai nav, un faila veidu. “-D” opcija tiek izmantota ar direktorija ceļu kā nosacīts paziņojums, lai pārbaudītu, vai direktorijs pastāv vai nav bash. Ja direktorijs pastāv, tas atgriezīs patiesību, pretējā gadījumā atgriezīs nepatiesu.

Piemērs:

#!/bin/bash
# Piešķiriet direktorijam ceļu mainīgajā, $ path
ceļš='/home/ubuntu/temp'
# Pārbaudiet, vai direktorijs pastāv vai nav
ja [ -d '$ ceļš' ];tad
# Izdrukājiet ziņojumu, ja direktorijs pastāv
izmest ārā 'Katalogs pastāv'
citādi
# Izdrukājiet ziņojumu, ja direktorija neeksistē
izmest ārā “Katalogs nepastāv”
būt

#22. Kā var izbeigt bash skriptu, neizpildot visus paziņojumus?

Izmantojot 'Izeja' komandu, bash skriptu var pārtraukt, neizpildot visus paziņojumus. Šis skripts pārbaudīs, vai pastāv konkrēts fails. Ja fails pastāv, tas izdrukās faila kopējās rakstzīmes, un, ja faila nav, tas pārtrauks skriptu, parādot ziņojumu.

Piemērs:

#!/bin/bash

# Inicializējiet faila nosaukumu uz mainīgo $ filename
faila nosaukums='course.txt'

# Pārbaudiet, vai fails pastāv vai nav, izmantojot opciju -f
ja [ -f '$ faila nosaukums' ];tad
# Drukāt ziņojumu, ja fails pastāv
izmest ārā '$ faila nosaukumspastāv '
citādi
# Drukājiet ziņojumu, ja fails neeksistē
izmest ārā '$ faila nosaukumsneeksistē '
# Pārtrauciet skriptu
Izeja 1
būt

# Saskaitiet faila garumu, ja fails pastāv
garums=``tualete -c $ faila nosaukums``

# Izdrukājiet faila garumu
izmest ārā Kopējais rakstzīmju skaits -$ garumā'

#23. Kādi ir pārtraukuma un turpināšanas paziņojumu lietojumi bash?

pārtraukums paziņojums tiek izmantots, lai izbeigtu no cilpas, nepabeidzot pilnu atkārtojumu, pamatojoties uz nosacījumu un Turpināt paziņojums tiek izmantots ciklā, lai izlaistu dažus paziņojumus, pamatojoties uz nosacījumu. Lietojumi pārtraukums un Turpināt apgalvojumi ir izskaidroti nākamajā piemērā.

Piemērs:

#!/bin/bash
# Inicializējiet mainīgo $ i līdz 0, lai sāktu ciklu
i=0
# cilpa atkārtosies 10 reizes
kamēr [ $ i -viņi 10 ]
darīt
# Palieliniet vērtību $ i par 1
((es ++))
# Ja vērtība $ i ir vienāda ar 8, tad pārtrauciet ciklu, izmantojot paziņojumu “break”
ja [ $ i -ekv 8 ];tad
pārtraukums;
būt
# Ja vērtība $ i ir lielāka par 6, izlaidiet cikla pēdējo paziņojumu
#, izmantojot paziņojumu turpināt
ja [ $ i -dot 6 ];tad
Turpināt;
būt
izmest ārā 'pašreizējā vērtība i =$ i'
darīts

# Izdrukājiet $ i vērtību pēc pārtraukšanas no cilpas
izmest ārā 'Tagad i vērtība =$ i'

#24. Kā padarīt bash failu izpildāmu?

Izpildāmos bash failus var izveidot, izmantojot 'Chmod' komandu. Izpildāmo atļauju var iestatīt, izmantojot '+ X' iekšā chmod komandu ar skripta faila nosaukumu. Bash failus var izpildīt bez skaidra 'Bash' komandu pēc šī faila izpildes bita iestatīšanas.

Piemērs:

# Iestatiet izpildes bitu
$chmod+ x faila nosaukums.sh

# Palaidiet izpildāmo failu
$./faila nosaukums.sh

#25. Miniet dažas iespējas, kas tiek izmantotas failu pārbaudei

Lai pārbaudītu failu, bash ir pieejamas daudzas iespējas. Dažas iespējas ir minētas zemāk.

Iespēja Apraksts
-f To izmanto, lai pārbaudītu, vai fails pastāv, un tas ir parasts fails.
-Un To izmanto tikai, lai pārbaudītu, vai fails pastāv.
-r To izmanto, lai pārbaudītu, vai fails pastāv, un tam ir lasīšanas atļauja.
-iekšā To izmanto, lai pārbaudītu, vai fails pastāv, un tam ir nepieciešama rakstīšanas atļauja.
-x To izmanto, lai pārbaudītu, vai fails pastāv, un tam ir izpildes atļauja.
-d To izmanto, lai pārbaudītu direktorija esamību.
-TIE To izmanto, lai pārbaudītu, vai fails pastāv, un tā ir simboliska saite.
-S To izmanto, lai pārbaudītu, vai fails pastāv, un tā ir ligzda.
-b To izmanto, lai pārbaudītu, vai fails ir bloķēta ierīce.
-s To izmanto, lai pārbaudītu, vai fails nav nulles izmērs.
-piem Tas tika izmantots, lai pārbaudītu, vai pirmā faila saturs ir jaunāks par otro failu. Piemēram, fails1 -nt fails2 norāda, ka fails1 ir jaunāks par failu2.
-ne Tas tika izmantots, lai pārbaudītu, vai pirmā faila saturs ir vecāks par otro failu. Piemēram, fails1 -ne fails2 norāda, ka fails1 ir vecāks par failu2.
-gaļa To izmanto, lai pārbaudītu, vai divas cietās saites attiecas uz vienu un to pašu failu. Piemēram, flink1 -ef flink2 norāda, ka flink1 un flink2 ir cietās saites un abas attiecas uz vienu un to pašu failu.

#26. Ko nozīmē “bc” un kā šo komandu var izmantot bash?

Pilna “bc” forma ir Bash kalkulators precīzāk veikt aritmētiskās darbības bash. Skaitļa daļa tiek izlaista, ja jebkura aritmētiskā darbība tiek veikta bash, izmantojot “Izteiksme” komandu. Daļējo daļu var noapaļot, izmantojot mērogā vērtību ar ‘Bc’ komandu.

Piemērs:

#!/bin/bash
# Aprēķiniet dalījumu bez daļskaitļa vērtības
izmest ārā '39/7' | bc

# Aprēķiniet dalījumu ar pilnu daļskaitļa vērtību
izmest ārā '39/7' | bc -viņi

# Aprēķiniet dalījumu ar trim cipariem aiz komata
izmest ārā 'skala = 3; 39/7 ' | bc

#27. Kā var izdrukāt konkrētu faila rindu bash?

Ir daudz veidu, kā izdrukāt noteiktu līniju bash. Kā 'awk', 'sed' un 'Aste' komandas var izmantot, lai drukātu noteiktu faila rindu bash, ir parādīts nākamajā piemērā.

Piemērs:

#!/bin/bash

# Izlasiet un saglabājiet faila pirmo rindu, izmantojot komandu 'awk' ar mainīgo NR
1. līnija=``awk '{if (NR == 1) print $ 0}'course.txt``
# Izdrukājiet līniju
izmest ārā $ 1. rinda

# Izlasiet faila otro rindu, izmantojot komandu 'sed' ar opciju -n
2. līnija=``sed -n2p kurss.txt``
# Izdrukājiet līniju
izmest ārā $ 2. rindiņa

# Izlasiet faila pēdējo rindu, izmantojot komandu 'tail' ar opciju -n
3. līnija=``asti -n 1course.txt``
# Izdrukājiet failu
izmest ārā $ 3. rinda

#28. Kas ir IFS?

IFS ir īpašs apvalka mainīgais. Pilna forma IFS ir iekšējais lauka atdalītājs,
tas darbojas kā norobežotājs, lai atdalītu vārdu no teksta rindas. To galvenokārt izmanto virknes sadalīšanai, komandas lasīšanai, teksta aizstāšanai utt.

Piemērs:

#!/bin/bash
# Deklarēt “:” kā norobežotāju teksta sadalīšanai
IFS=':'
# Piešķiriet teksta datiem $ 'teksta datus ar': '
teksts='Sarkans: zaļš: zils'
# for loop nolasīs katru vārdu pēc teksta sadalīšanas, pamatojoties uz IFS
priekšstiekšā $ teksts;darīt
# Izdrukājiet vārdu
izmest ārā $ stundas
darīts

#29. Kā uzzināt virknes datu garumu?

“Expr”, “wc” un 'Awk' komandas var izmantot, lai noskaidrotu virknes datu garumu bash. “Izteiksme” un 'Awk' komandu izmantošana garums iespēja, 'Tualete' komanda izmanto “–C” iespēja saskaitīt virknes garumu.

Piemērs:

Iepriekš minēto komandu izmantošana ir parādīta šādā skriptā.

#!/bin/bash
# Saskaitiet garumu, izmantojot opciju “expr” length
izmest ārā ``izteiksmegarums'Man patīk PHP'``
# Saskaitiet garumu, izmantojot komandu wc
izmest ārā 'Man patīk Bašs' | tualete -c
# Saskaitiet garumu, izmantojot komandu 'awk'
izmest ārā 'Man patīk Python' | awk '{drukas garums}'

#30. Kā paralēli palaist vairākus bash skriptus?

Izmantojot, var paralēli izpildīt vairākus bash skriptus komandu. Šajā piemērā ir parādīts, kā vienlaikus var izpildīt vairākus bash failus no mapes.

Piemērs:

# Piešķiriet mapes nosaukumam ceļu, kurā atrodas mainīgais $ dir
# vairāki bash faili
tev='mājas/Ubuntu/temp'

# for loop nolasīs katru failu no direktorija un izpildīs paralēli
priekšskriptsiekšātev/ *.sh
darīt
bash '$ skripts' &
darīts

Secinājums:

Lielākā daļa pamata bash skripta intervijas jautājumu ir aprakstīti šajā rakstā lasītājiem, kuri vēlas sākt bash programmētāja karjeru.