Cuprins[Ascunde][Spectacol]
- 1. Ce este mai exact o coajă?
- 2. Ce este mai exact Shell Scripting?
- 3. Explicați beneficiile scripturilor shell.
- 4. Descrieți programarea GUI.
- 5. În programarea shell, ce este exact un superbloc?
- 6. Enumerați numeroasele tipuri de shell accesibile.
- 7. Scrieți distincția dintre Bourne Shell și C Shell.
- 8. Ce sunt mai exact variabilele Shell?
- 9. Care sunt multe tipuri de variabile din Shell Script?
- 10. Ce comandă este folosită pentru a rula un fișier shell?
- 11. Ce îmi puteți spune despre Super Block în scripting Shell?
- 12. Ce este mai exact un metacaracter?
- 13. Care este diferența dintre link-urile soft și hard?
- 14. Care este sensul liniei Shebang în Shell Scripting?
- 15. Prin ce câțiva pași parcurge un proces Linux?
- 16. Descrieți Crontab.
- 17. Ce sunt exact instrucțiunile de control?
- 18. Care este diferența dintre $* și $@?
- 19. Vă rugăm să explicați cum comparați șirurile într-un script shell.
- 20. Cum pot crea, citi și elimina fișiere?
- 21. Este posibil să distingem legăturile hard și soft în scripturile shell?
- 22. Cum veți depana erorile din programul shell?
- 23. Câte blocuri există într-un sistem de fișiere?
- 24. De ce este bash un limbaj slab tastat?
- 25. Cât de lungă are o variabilă dintr-un script shell?
- 26. Denumiți comanda de înlocuire pentru ecou.
- 27. Definiți IFS
- 28. Este posibil să rulați numeroase scripturi într-un Shell?
- 29. Care sunt multele moduri ale editorilor vi?
- 30. Care este diferența dintre $! și $$?
- 31. Ce înseamnă $#?
- 32. Denumiți comanda utilizată pentru a crea backup-ul.
- 33. Când este nepotrivit să utilizați Shell Scripting?
- 34. Cum ai de gând să te conectezi la un server de baze de date de pe Linux?
- 35. Care sunt cele două fișiere de comandă crontab?
- 36. Care sunt cele trei protecții de securitate UNIX distincte pentru un fișier sau date?
- 37. Explicați pe scurt comanda sed folosind un exemplu.
- 38. În scripturile shell, care este scopul instrumentelor care vin cu driverul client deschis?
- 49. Denumiți comanda care ar trebui utilizată pentru a determina durata sistemului.
- 40. Realizați un script pentru a adăuga numeroase valori.
- 41. Creați un exemplu de funcție.
- Concluzie
Un script shell este un program de calculator sau un interpret de linie de comandă care este destinat să fie rulat de shell-ul Unix. Cel mai frumos aspect despre construirea unui script shell este că instrucțiunile și sintaxa sunt identice cu cele introduse direct la linia de comandă.
Linux este un popular sistem de operare open-source recunoscut pentru securitatea ridicată și interfața de linie de comandă. Este vital pentru aspiranții ingineri DevOps să înțeleagă scripturile shell sau scripturile bash.
Dacă sunteți familiarizat cu shell scripting și vă pregătiți pentru un interviu de angajare, acest articol cu întrebări și răspunsuri pentru interviu shell scripting vă va oferi cele mai bune întrebări de interviu shell scripting care vă vor ușura pregătirea.
1. Ce este mai exact o coajă?
Shell-ul servește ca o punte între utilizator și nucleu. Chiar dacă poate exista un singur nucleu, un sistem poate avea mai multe shell-uri care rulează în același timp.
Ca rezultat, de fiecare dată când un utilizator introduce o comandă pe tastatură, shell-ul vorbește cu nucleul pentru a o executa și apoi afișează rezultatele utilizatorului.
2. Ce este mai exact Shell Scripting?
Shell Scripting este un software de calculator gratuit și open-source care rulează în shell Unix/Linux. Software-ul Shell Scripting vă permite să scrieți o serie de comenzi pe care shell-ul le va executa.
Poate integra secvențe de comenzi lungi și repetitive într-un singur script ușor, care poate fi salvat și executat în orice moment, reducând eforturile de programare.
3. Explicați beneficiile scripturilor shell.
- Aproape fiecare sistem de operare actual, inclusiv UNIX, Linux, BSD și Mac OS X, poate rula scripturi shell, deoarece sunt create într-un limbaj interpretat.
- Un instrument de depanare care este interactiv, precum și o pornire rapidă.
- Economisește timp, ajutând la automatizarea sarcinilor administrative.
- Programatorii nu trebuie să își ajusteze sintaxa deoarece comanda și sintaxa sunt aceleași cu cele plasate direct în linia de comandă.
- Scripturile Shell sunt simplu de utilizat și de scris.
- Cu acest instrument, aplicațiile software pot fi produse în conformitate cu platformele lor respective.
- În loc de instrucțiuni unice, acestea pot fi folosite pentru execuție în masă.
- Îl puteți folosi pentru a vă crea propriul sistem de operare personalizat cu funcționalitatea necesară.
4. Descrieți programarea GUI.
Graficul User Interface programarea (GUI) necesară pentru a opera computerul și aplicațiile este denumită scripting GUI. Funcționează cu mai multe sisteme de operare și este folosit pentru a controla diverse programe.
5. În programarea shell, ce este exact un superbloc?
Un software numit superbloc stochează înregistrările anumitor sisteme de fișiere. Dimensiunea, numărul de blocuri umplute și goale, datele de utilizare, dimensiunea grupului de blocuri și locația și dimensiunea tabelelor de inoduri se numără printre proprietățile care pot fi găsite într-un bloc.
6. Enumerați numeroasele tipuri de shell accesibile.
- Shell Bourne: Când utilizați un shell de tip Bourne, promptul implicit este simbolul $.
- C Shell: Când utilizați un shell de tip C, promptul implicit este caracterul %.
- Shell Korn: Korn este o aplicație de scripting Shell bazată pe Unix, care sa bazat inițial pe Bash Shell Scripting. Acest shell este extrem de complex și folosește un nivel înalt limbaj de programare.
- TCSH: Nu există o formă completă de TCSH. Așa este. TCSH este o versiune mai sofisticată a shell-ului Berkeley Unix C. Acum acceptă sintaxa C.
7. Scrieți distincția dintre Bourne Shell și C Shell.
Bourne Shell: compactitatea și viteza îl deosebesc de alte cochilii. Cu toate acestea, lipsesc elemente interactive, cum ar fi capacitatea de a reține cererile anterioare. În plus, aritmetica și expresii logice nu sunt suportate de shell-ul Bourne.
C Shell: este o îmbunătățire UNIX care include caracteristici interactive, cum ar fi aliasuri și istoricul comenzilor. Conține capabilități ușoare de programare, pe lângă aritmetica și gramatica de expresie încorporată.
8. Ce sunt mai exact variabilele Shell?
Variabilele Shell sunt fundamentul fiecărui program sau script Shell. Variabilele permit Shell să stocheze și să modifice date într-o aplicație Shell. Variabilele șir sunt utilizate în mod obișnuit pentru a păstra variabilele shell.
9. Care sunt multe tipuri de variabile din Shell Script?
Sistemul de operare (Linux) creează și definește variabile definite de sistem. Aceste variabile sunt adesea definite cu majuscule și pot fi examinate cu comanda „set”.
Variabilele definite de utilizator sunt generate sau specificate de utilizatorii sistemului, iar valorile lor pot fi examinate prin executarea comenzii „echo”.
10. Ce comandă este folosită pentru a rula un fișier shell?
11. Ce îmi puteți spune despre Super Block în scripting Shell?
Un Super Block este pur și simplu un software care stochează informații despre anumite sisteme de fișiere.
Un superbloc conține informații precum dimensiunea blocurilor, numărul de blocuri goale și pline și numărul lor corespunzător, dimensiunea și plasarea tabelelor de inoduri, harta blocurilor de disc și statisticile de utilizare și dimensiunea grupurilor de blocuri.
12. Ce este mai exact un metacaracter?
Un metacaracter este un caracter unic care este încorporat în programul sau câmpul de date al unui shell. Oferă informații despre alte personaje. Pentru a lista toate fișierele care încep cu caracterul „s”, de exemplu, utilizați comanda „ls s*”.
13. Care este diferența dintre link-urile soft și hard?
Legăturile soft sunt legate de numele fișierului și pot trăi pe diferite sisteme de fișiere; în timp ce, legăturile hard sunt legate de inodul fișierului și trebuie să fie pe același sistem de fișiere ca și fișierul.
Ștergerea fișierului original face legătura soft inactivă (link întrerupt), dar nu are niciun efect asupra conexiunii hard și linkul hard va accesa în continuare o copie a fișierului.
14. Care este sensul liniei Shebang în Shell Scripting?
Linia Shebang este în mod normal situată în capul scriptului, de exemplu, #!/bin/sh. Această linie specifică poziția motorului. Acest motor este, în general, cel care rulează scriptul.
15. Prin ce câțiva pași parcurge un proces Linux?
De obicei, un proces Linux trece prin următoarele patru etape:
- În așteptare: resursa este așteptată de procesul Linux.
- Rulează: chiar acum, procesul Linux rulează.
- Oprit: După o execuție cu succes, procesul Linux este încheiat.
- Zombiee Procesul s-a oprit, dar tabelul de procese încă îl arată ca activ.
16. Descrieți Crontab.
Crontab reprezintă tabelul cron, deoarece programatorul de joburi „cron” este folosit pentru a efectua joburile. Este o colecție de comenzi care sunt efectuate în mod regulat, iar numele comenzii controlează și lista.
Programul și instrumentul folosit pentru a schimba programul se numesc Crontab.
17. Ce sunt exact instrucțiunile de control?
Instrucțiunile de control indică modul în care vor fi executate diferitele instrucțiuni ale scriptului. Ele sunt utilizate în general în aplicațiile Shell pentru a evalua controlul fluxului.
Fără aceste instrucțiuni, execuția unui script shell continuă în secvență. Instrucțiunile de control influențează modul în care se desfășoară execuția în programele shell.
18. Care este diferența dintre $* și $@?
$@ consideră fiecare argument citat ca fiind un argument separat, în timp ce $* consideră că întreaga colecție de parametri poziționali este un singur șir.
19. Vă rugăm să explicați cum comparați șirurile într-un script shell.
Comanda „test” este folosită pentru a compara șirurile de text. Această comandă compară șirurile de text comparând caracterele fiecărui șir.
20. Cum pot crea, citi și elimina fișiere?
21. Este posibil să distingem legăturile hard și soft în scripturile shell?
Shell scripting este o soluție puternică care, la fel ca Windows, folosește link-uri pentru a construi comenzi rapide. Legăturile soft nu au o locație fixă și pot fi găsite peste tot pe același sistem de fișiere.
Ele sunt de obicei legate de numele fișierului. Legăturile hard, pe de altă parte, rămân pe același sistem de fișiere. În majoritatea situațiilor, legăturile dure sunt asociate cu noduri și au o anumită poziție fixă.
22. Cum veți depana erorile din programul shell?
Câteva modalități comune de depanare a erorilor de script sunt:
- Set-x este folosit pentru a permite depanarea.
- Inserați instrucțiuni de depanare într-un script shell pentru a afișa informații care ajută la descoperirea unei probleme.
23. Câte blocuri există într-un sistem de fișiere?
- Superblock: Acest bloc oferă detalii despre starea unui sistem de fișiere, inclusiv dimensiunea blocului, dimensiunea grupului de blocuri, datele de utilizare, numărul de blocuri goale și umplute, dimensiunea și plasarea tabelelor de inoduri etc.
- Bootblock: software-ul de încărcare bootstrap, care rulează atunci când un utilizator pornește sistemul gazdă, este stocat în acest bloc.
- Bloc de date: Acest bloc de date conține conținutul fișierului sistemului de fișiere.
- Tabel Inode: UNIX tratează toate componentele ca fișiere, iar tabelul inode este depozitul pentru toate datele legate de fișiere.
24. De ce este bash un limbaj slab tastat?
Din cauza lipsei unei cerințe de declarare a tipului de date la declararea variabilelor, Bash este un limbaj tip slab. Tipul unei variabile este determinat de valoarea sa curentă și este tratat ca șir în Bash.
Comanda declare poate fi folosită pentru a defini variabilele Bash.
Cu toate acestea, posibilitățile de definire a tipurilor de date sunt limitate și nu acoperă toate tipurile de date. De exemplu, comanda declare nu poate fi utilizată cu tipul de date float.
25. Cât de lungă are o variabilă dintr-un script shell?
O variabilă dintr-un script shell are o durată de viață de doar până la încheierea execuției.
26. Denumiți comanda de înlocuire pentru ecou.
Comanda tput este o alternativă la echo. Putem folosi această comandă pentru a controla modul în care este afișată rezultatul. În plus, indiferent de dimensiunea ecranului, scripturile shell pot efectua lucruri precum sublinierea și centrarea textului.
27. Definiți IFS
IFS înseamnă Internal Field Separator. Este o variabilă de sistem cu valoarea implicită de spațiu, tab, urmată de o nouă linie. IFS indică locul unde un câmp sau cuvânt se termină într-o linie și unde începe altul.
28. Este posibil să rulați numeroase scripturi într-un Shell?
Da, multe scripturi pot fi executate într-un Shell. Puteți apela un script de la altul rulând mai multe scripturi. Pentru a face acest lucru, trebuie să specificați numele scriptului pe care doriți să-l invocați.
29. Care sunt multele moduri ale editorilor vi?
- Modul de comandă: acesta este modul în care începeți.
- Mod Editare: Această opțiune vă permite să efectuați editări ulterioare.
- În acest mod, interacționați cu vi și îi oferiți instrucțiuni de procesare.
30. Care este diferența dintre $! și $$?
$! Afișează ID-ul procesului care a intrat recent în fundal.
$$ returnează id-ul procesului care se execută în prezent.
31. Ce înseamnă $#?
$# deține de obicei numărul de argumente, deși acesta poate fi diferit pentru funcții. Descris simplu, a fost folosit pentru a înregistra numărul de parametri de linie de comandă furnizați unui script shell.
32. Denumiți comanda utilizată pentru a crea backup-ul.
Comanda tar este folosită pentru a crea o copie de rezervă. Tar este o abreviere pentru arhiva pe bandă și este folosită pentru a construi copii de rezervă care utilizează tar, gzip și bzip. Această comandă poate salva și restaura fișiere de pe și pe o bandă.
În general, fișierele și directoarele sunt comprimate în tarball-uri, care sunt fișiere de arhivă. Este una dintre cele mai utilizate instrucțiuni din acest motiv. În plus, tarball-ul este pur și simplu transferabil de la un server la altul.
33. Când este nepotrivit să utilizați Shell Scripting?
Nu ar trebui să folosim Shell Scripting dacă munca este cu adevărat complexă, cum ar fi construirea unui întreg sistem de procesare a salariilor.
Nu ar trebui să folosim Shell Scripting dacă munca necesită un grad ridicat de productivitate.
Nu ar trebui să folosim Shell Scripting dacă proiectul necesită mai multe soluții software.
34. Cum ai de gând să te conectezi la un server de baze de date de pe Linux?
Putem utiliza utilitarul isql inclus cu driverul client deschis, după cum urmează:
35. Care sunt cele două fișiere de comandă crontab?
cron.allow determină utilizatorii cărora li se permite să folosească comanda crontab.
cron.deny, care determină dacă utilizatorilor ar trebui să li se interzică utilizarea comenzii crontab.
36. Care sunt cele trei protecții de securitate UNIX distincte pentru un fișier sau date?
- Oferă securitate la nivel de fișier, acordând drepturi de citire, scriere și execuție fișierelor.
- Oferă utilizatorilor un ID de utilizator unic și o parolă pentru autentificare, astfel încât persoanele nefamiliare sau neautorizate să nu le poată accesa.
- Oferă securitate prin criptarea fișierelor. Această abordare vă permite să codificați un fișier într-un format care nu poate fi citit. Chiar dacă un fișier este deschis, conținutul acestuia nu poate fi citit până când nu este decriptat.
37. Explicați pe scurt comanda sed folosind un exemplu.
sed este o abreviere pentru editor de flux. Este folosit pentru a edita un fișier fără utilizarea unui editor. Este folosit pentru a modifica un flux dat, cum ar fi un fișier sau o intrare în conductă.
38. În scripturile shell, care este scopul instrumentelor care vin cu driverul client deschis?
Sistemul este conectat exclusiv la un server de baze de date prin intermediul instrumentelor. Utilizatorilor li se cere să finalizeze o serie de activități importante și necesare pentru programare.
Pentru scripting, sunt necesare mai multe date și informații și nu este întotdeauna practic să le păstrați într-un singur loc. Utilizatorii care folosesc această abordare trebuie să garanteze rezultate fără erori.
49. Denumiți comanda care ar trebui utilizată pentru a determina durata sistemului.
Folosind comanda Uptime, puteți determina cât timp este funcțional sistemul dumneavoastră. Numărul de utilizatori cu sesiuni active și încărcarea tipică a sistemului de peste 1, 5 și 15 minute sunt, de asemenea, disponibile.
De asemenea, puteți filtra informațiile care sunt prezentate dintr-o dată în funcție de alegerile pe care le faceți.
40. Realizați un script pentru a adăuga numeroase valori.
41. Creați un exemplu de funcție.
Concluzie
Puteți înțelege că shell-ul este în primul rând o interfață între sistemul de operare și utilizator care traduce instrucțiunile introduse de utilizator în sistemul de operare sau kernel cu ajutorul acestor întrebări de interviu pentru shell-scripting.
Acest concept este adesea crucial în procesul de pregătire a interviului pentru Ingineri DevOps și testere de automatizare. Scriptul Shell permite crearea de scripturi cu diferite niveluri de complexitate. Scriptul Shell poate fi folosit și pentru a automatiza o varietate de procese recurente.
Vedea Seria de interviuri a lui Hashdork pentru ajutor la pregătirea interviului.
Lasă un comentariu