Indholdsfortegnelse[Skjule][At vise]
- 1. Hvad er en skal egentlig?
- 2. Hvad er Shell Scripting egentlig?
- 3. Forklar fordelene ved shell-scripting.
- 4. Beskriv GUI programmering.
- 5. Hvad er en superblok egentlig i shell-programmering?
- 6. Liste over de mange slags tilgængelige skaller.
- 7. Skriv forskellen mellem Bourne Shell og C Shell.
- 8. Hvad er Shell-variabler helt præcist?
- 9. Hvad er de mange slags variabler i Shell Script?
- 10. Hvilken kommando bruges til at køre en shell-fil?
- 11. Hvad kan du fortælle mig om Super Block in Shell scripting?
- 12. Hvad er en metakarakter egentlig?
- 13. Hvad er forskellen mellem bløde og hårde led?
- 14. Hvad er meningen med Shebang-linjen i Shell Scripting?
- 15. Hvilke flere trin gennemgår en Linux-proces?
- 16. Beskriv Crontab.
- 17. Hvad er kontrolinstruktioner helt præcist?
- 18. Hvad er forskellen mellem $* og $@?
- 19. Forklar venligst, hvordan du sammenligner strenge i et shell-script.
- 20. Hvordan kan jeg oprette, læse og fjerne filer?
- 21. Er det muligt at skelne mellem hårde og bløde links i shell-scripting?
- 22. Hvordan vil du fejlfinde fejl i shell-programmet?
- 23. Hvor mange blokke er der i et filsystem?
- 24. Hvorfor er bash et svagt skrevet sprog?
- 25. Hvor lang tid har en variabel i et shell-script?
- 26. Navngiv erstatningskommandoen for ekko.
- 27. Definer IFS
- 28. Er det muligt at køre adskillige scripts i en Shell?
- 29. Hvad er de mange modes for vi-editorer?
- 30. Hvad er forskellen mellem $! og $$?
- 31. Hvad betyder $#?
- 32. Navngiv den kommando, der blev brugt til at oprette sikkerhedskopien.
- 33. Hvornår er det upassende at bruge Shell Scripting?
- 34. Hvordan vil du oprette forbindelse til en databaseserver fra Linux?
- 35. Hvad er de to crontab-kommandofiler?
- 36. Hvad er de tre forskellige UNIX-sikkerhedsbeskyttelser for en fil eller data?
- 37. Forklar sed-kommandoen kort ved hjælp af et eksempel.
- 38. Hvad er formålet med de værktøjer, der følger med den åbne klientdriver, i shell-scripting?
- 49. Navngiv den kommando, der skal bruges til at bestemme systemets varighed.
- 40. Lav et script for at tilføje adskillige værdier.
- 41. Opret et funktionseksempel.
- Konklusion
Et shell-script er et computerprogram eller en kommandolinjefortolker, der er beregnet til at blive kørt af Unix-skallen. Det bedste aspekt ved at bygge et shell-script er, at instruktionerne og syntaksen er identiske med dem, der indtastes direkte på kommandolinjen.
Linux er et populært open source-operativsystem, der er anerkendt for sin høje sikkerhed og kommandolinjegrænseflade. Det er afgørende for håbefulde DevOps-ingeniører at forstå shell-scripting eller bash-scripting.
Hvis du er fortrolig med shell scripting og forbereder dig til en jobsamtale, vil denne shell scripting interviewspørgsmål og svar-artikel give dig de bedste shell scripting interviewspørgsmål, der vil gøre din forberedelse lettere.
1. Hvad er en skal egentlig?
Skallen fungerer som en bro mellem brugeren og kernen. Selvom der kun kan være én kerne, kan et system have flere skaller kørende på samme tid.
Som et resultat, hver gang en bruger indtaster en kommando på tastaturet, taler skallen med kernen for at udføre den og viser derefter resultaterne for brugeren.
2. Hvad er Shell Scripting egentlig?
Shell Scripting er en gratis og open source computersoftware, der kører i Unix/Linux-skallen. Shell Scripting-software giver dig mulighed for at skrive en række kommandoer, som skallen vil udføre.
Det kan integrere lange og gentagne kommandosekvenser i et enkelt og nemt script, der kan gemmes og udføres til enhver tid, hvilket reducerer programmeringsindsatsen.
3. Forklar fordelene ved shell-scripting.
- Næsten alle nuværende operativsystemer, inklusive UNIX, Linux, BSD og Mac OS X, kan køre shell-scripts, da de er oprettet i et fortolket sprog.
- Et debugging-værktøj, der er interaktivt, samt en hurtig start.
- Det sparer tid ved at hjælpe med at automatisere administrative opgaver.
- Programmører behøver ikke at justere deres syntaks, fordi kommandoen og syntaksen er de samme som dem, der er placeret direkte på kommandolinjen.
- Shell-scripts er enkle at bruge og skrive.
- Med dette værktøj kan softwareapplikationer produceres i overensstemmelse med deres respektive platforme.
- I stedet for enkelte instruktioner kan de bruges til massehenrettelse.
- Du kan bruge det til at oprette dit eget brugerdefinerede operativsystem med den nødvendige funktionalitet.
4. Beskriv GUI programmering.
Den grafiske Brugergrænseflade (GUI) programmering, der er nødvendig for at betjene computeren og apps, omtales som GUI-scripting. Det fungerer med flere operativsystemer og bruges til at styre forskellige programmer.
5. Hvad er en superblok egentlig i shell-programmering?
En software kaldet en superblok gemmer registreringerne af visse filsystemer. Størrelse, antal udfyldte og tomme blokke, brugsdata, blokgruppestørrelse og placeringen og størrelsen af inodetabeller er blandt de egenskaber, der kan findes i en blok.
6. Liste over de mange slags tilgængelige skaller.
- Bourne shell: Når du bruger en Bourne-type shell, er standardprompten $-symbolet.
- C Shell: Når du bruger en C-type shell, er standardprompten tegnet %.
- Korn shell: Korn er en Unix-baseret Shell scripting applikation, der oprindeligt var baseret på Bash Shell Scripting. Denne skal er meget kompleks og bruger et højt niveau programmeringssprog.
- TCSH: Der er ingen komplet form for TCSH. Det er sådan det er. TCSH er en mere sofistikeret version af Berkeley Unix C-skallen. Det understøtter nu C-syntaks.
7. Skriv forskellen mellem Bourne Shell og C Shell.
Bourne Shell: Dens kompakthed og hastighed adskiller den fra andre skaller. Der mangler dog interaktive elementer såsom evnen til at huske tidligere anmodninger. Endvidere aritmetik og logiske udtryk understøttes ikke af Bourne-skallen.
C Shell: Det er en UNIX-forbedring, der inkluderer interaktive funktioner såsom aliaser og kommandohistorik. Den indeholder nemme programmeringsmuligheder ud over dens indbyggede aritmetik og udtryksgrammatik.
8. Hvad er Shell-variabler helt præcist?
Shell-variabler er grundlaget for hvert Shell-program eller script. Variabler gør det muligt for Shell at gemme og ændre data i en Shell-applikation. Strengvariabler bruges almindeligvis til at holde skalvariabler.
9. Hvad er de mange slags variabler i Shell Script?
Operativsystemet (Linux) opretter og definerer systemdefinerede variabler. Disse variable er ofte defineret med store bogstaver og kan undersøges med kommandoen "set".
Brugerdefinerede variabler genereres eller specificeres af systembrugere, og deres værdier kan undersøges ved at udføre kommandoen "echo".
10. Hvilken kommando bruges til at køre en shell-fil?
11. Hvad kan du fortælle mig om Super Block in Shell scripting?
En Super Block er simpelthen software, der gemmer information om bestemte filsystemer.
En superblok indeholder information såsom blokstørrelsen, antallet af tomme og fulde blokke og deres tilsvarende antal, størrelsen og placeringen af inodetabellerne, diskblokkortet og brugsstatistikker og størrelsen af blokgrupperne.
12. Hvad er en metakarakter egentlig?
Et metategn er et unikt tegn, der er inkorporeret i en shells program eller datafelt. Det giver oplysninger om andre karakterer. For at liste alle filer, der begynder med tegnet 's', skal du f.eks. bruge kommandoen 'ls s*'.
13. Hvad er forskellen mellem bløde og hårde led?
Soft links er knyttet til filnavnet og kan leve på forskellige filsystemer; hvorimod hårde links er knyttet til filens inode og skal være på samme filsystem som filen.
Sletning af den originale fil gør det bløde link inaktivt (brudt link), men har ingen effekt på den hårde forbindelse, og det hårde link vil stadig få adgang til en kopi af filen.
14. Hvad er meningen med Shebang-linjen i Shell Scripting?
Shebang-linjen er normalt placeret i spidsen af scriptet, for eksempel #!/bin/sh. Denne linje angiver motorens position. Denne motor er generelt den, der kører scriptet.
15. Hvilke flere trin gennemgår en Linux-proces?
Typisk gennemgår en Linux-proces følgende fire trin:
- Venter: Ressourcen afventes af Linux-processen.
- Kører: Lige nu kører Linux-processen.
- Stoppet: Efter en vellykket udførelse afsluttes Linux-processen.
- ZombieeProcessen er stoppet, men procestabellen viser den stadig som aktiv.
16. Beskriv Crontab.
Crontab står for cron table, da jobplanlæggeren 'cron' bruges til at udføre opgaverne. Det er en samling af kommandoer, der udføres regelmæssigt, og kommandoens navn styrer også listen.
Tidsplanen og værktøjet, der bruges til at ændre tidsplanen, kaldes begge Crontab.
17. Hvad er kontrolinstruktioner helt præcist?
Kontrolinstruktioner angiver, hvordan scriptets forskellige instruktioner vil blive udført. De bruges generelt i Shell-applikationer til at vurdere kontrolstrøm.
Uden disse instruktioner fortsætter udførelsen af et shell-script i rækkefølge. Kontrolinstruktioner påvirker, hvordan eksekveringen forløber i shell-programmer.
18. Hvad er forskellen mellem $* og $@?
$@ betragter hvert citeret argument som et separat argument, hvorimod $* betragter den fulde samling af positionsparametre som en enkelt streng.
19. Forklar venligst, hvordan du sammenligner strenge i et shell-script.
Kommandoen 'test' bruges til at sammenligne tekststrenge. Denne kommando sammenligner tekststrenge ved at sammenligne hver strengs tegn.
20. Hvordan kan jeg oprette, læse og fjerne filer?
21. Er det muligt at skelne mellem hårde og bløde links i shell-scripting?
Shell-scripting er en stærk løsning, der ligesom Windows bruger links til at konstruere genveje. Soft links har ingen fast placering og kan findes overalt på det samme filsystem.
De er normalt knyttet til filnavnet. Hårde links, på den anden side, forbliver på det samme filsystem. I de fleste situationer er hårde forbindelser forbundet med noder og har en bestemt fast position.
22. Hvordan vil du fejlfinde fejl i shell-programmet?
Nogle almindelige måder at fejlfinde script-fejl på er:
- Set-x bruges til at tillade fejlfinding.
- Indsæt debug-sætninger i et shell-script for at vise information, der hjælper med at opdage et problem.
23. Hvor mange blokke er der i et filsystem?
- Superblok: Denne blok giver detaljer om tilstanden af et filsystem, herunder blokstørrelse, blokgruppestørrelse, brugsdata, antallet af tomme og udfyldte blokke, størrelsen og placeringen af inodetabeller osv.
- Bootblock: Bootstrap-loader-softwaren, som kører, når en bruger starter værtssystemet, er gemt i denne blok.
- Datablok: Denne datablok indeholder filindholdet i filsystemet.
- Inode-tabel: UNIX behandler alle komponenter som filer, og inode-tabellen er opbevaringsstedet for alle filrelaterede data.
24. Hvorfor er bash et svagt skrevet sprog?
På grund af manglen på et datatypedeklarationskrav ved deklarering af variabler, er Bash et svagt skrevet sprog. Typen af en variabel bestemmes af dens aktuelle værdi og behandles som en streng i Bash.
Declare-kommandoen kan bruges til at definere Bash-variabler.
Mulighederne for at definere datatyper er dog begrænsede og dækker ikke alle datatyper. For eksempel kan kommandoen declare ikke bruges med datatypen float.
25. Hvor lang tid har en variabel i et shell-script?
En variabel i et shell-script har en levetid på lige indtil afslutningen af eksekveringen.
26. Navngiv erstatningskommandoen for ekko.
tput-kommandoen er et alternativ til ekko. Vi kan bruge denne kommando til at kontrollere, hvordan outputtet vises. Ydermere, uanset skærmstørrelse, kan shell-scripts udføre ting som understregning og midtertekst.
27. Definer IFS
IFS står for Internal Field Separator. Det er en systemvariabel med standardværdien mellemrum, tab, efterfulgt af en ny linje. IFS angiver, hvor et felt eller ord slutter i en linje, og et andet begynder.
28. Er det muligt at køre adskillige scripts i en Shell?
Ja, mange scripts kan udføres i en Shell. Du kan kalde et script fra et andet ved at køre flere scripts. For at gøre det skal du angive navnet på det script, du vil starte.
29. Hvad er de mange modes for vi-editorer?
- Kommandotilstand: dette er den tilstand, du begynder i.
- Redigeringstilstand: Denne indstilling giver dig mulighed for at udføre efterfølgende redigeringer.
- I denne tilstand interagerer du med vi og giver den instruktioner til at behandle.
30. Hvad er forskellen mellem $! og $$?
$! Viser proces-id'et for den proces, der for nylig gik i baggrunden.
$$ returnerer proces-id'et for den igangværende proces.
31. Hvad betyder $#?
$# indeholder typisk antallet af argumenter, selvom dette kan variere for funktioner. Enkelt beskrevet blev det brugt til at registrere antallet af kommandolinjeparametre, der blev leveret til et shell-script.
32. Navngiv den kommando, der blev brugt til at oprette sikkerhedskopien.
Tar-kommandoen bruges til at oprette en sikkerhedskopi. Tar er en forkortelse for tape archive, og det bruges til at bygge sikkerhedskopier, der anvender tar, gzip og bzip. Denne kommando kan gemme og gendanne filer fra og til et bånd.
Generelt komprimeres filer og mapper til tarballs, som er arkivfiler. Det er en af de mest brugte instruktioner af denne grund. Derudover kan tarballen simpelthen overføres fra en server til en anden.
33. Hvornår er det upassende at bruge Shell Scripting?
Vi bør ikke bruge Shell Scripting, hvis arbejdet er virkelig komplekst, såsom at bygge et helt lønbehandlingssystem.
Vi bør ikke anvende Shell Scripting, hvis arbejdet kræver en høj grad af produktivitet.
Vi bør ikke bruge Shell Scripting, hvis projektet kræver flere softwareløsninger.
34. Hvordan vil du oprette forbindelse til en databaseserver fra Linux?
Vi kan bruge isql-værktøjet, der følger med den åbne klientdriver, som følger:
35. Hvad er de to crontab-kommandofiler?
cron.allow bestemmer, hvilke brugere der skal have tilladelse til at bruge crontab-kommandoen.
cron.deny, som bestemmer, om brugere skal udelukkes fra at bruge crontab-kommandoen.
36. Hvad er de tre forskellige UNIX-sikkerhedsbeskyttelser for en fil eller data?
- Det tilbyder sikkerhed på filniveau ved at tildele læse-, skrive- og eksekveringsrettigheder til filer.
- Det giver brugerne et unikt bruger-id og adgangskode til godkendelse, så ukendte eller uautoriserede personer ikke kan få adgang til det.
- Det giver sikkerhed ved kryptering af filer. Denne fremgangsmåde gør det muligt for dig at kode en fil i et ulæseligt format. Selvom en fil åbnes, kan dens indhold ikke læses, før den er dekrypteret.
37. Forklar sed-kommandoen kort ved hjælp af et eksempel.
sed er en forkortelse for stream editor. Det bruges til at redigere en fil uden brug af en editor. Det bruges til at ændre en given strøm, såsom en fil eller pipeline input.
38. Hvad er formålet med de værktøjer, der følger med den åbne klientdriver, i shell-scripting?
Systemet er udelukkende forbundet med en databaseserver via værktøjerne. Brugere skal udføre en række vigtige og nødvendige aktiviteter til programmering.
Til scripting er der brug for mere data og information, og det er ikke altid praktisk at opbevare dem ét sted. Brugere, der anvender denne fremgangsmåde, skal garantere fejlfrit output.
49. Navngiv den kommando, der skal bruges til at bestemme systemets varighed.
Ved hjælp af Uptime-kommandoen kan du bestemme, hvor længe dit system har været operationelt. Antallet af brugere med aktive sessioner og den typiske systembelastning over 1, 5 og 15 minutter er også tilgængelige.
Du kan også filtrere de oplysninger, der præsenteres på én gang, i henhold til de valg, du foretager.
40. Lav et script for at tilføje adskillige værdier.
41. Opret et funktionseksempel.
Konklusion
Du kan forstå, at shell primært er en grænseflade mellem operativsystemet og brugeren, der oversætter brugerindtastede instruktioner til operativsystemet eller kernen ved hjælp af disse shell-scripting interviewspørgsmål.
Dette koncept er ofte afgørende i interviewforberedelsesprocessen for DevOps ingeniører og automatiseringstestere. Shell-scripting muliggør oprettelse af scripts med forskellige kompleksitetsniveauer. Shell-scripting kan også bruges til at automatisere en række tilbagevendende processer.
Se Hashdorks interviewserie for hjælp til samtaleforberedelse.
Giv en kommentar