50 Shell Scripting Intervju spørsmål og svar (2026)

Her er Shell Scripting-intervjuspørsmål og svar for ferskere så vel som erfarne kandidater for å få drømmejobben.

 

Linux Shell Scripting intervjuspørsmål og svar

1) Hva er et skall?

Shell er et grensesnitt mellom brukeren og kjernen. Selv om det bare kan være én kjerne; et system kan ha mange skall som kjører samtidig. Så hver gang en bruker skriver inn en kommando via tastaturet, kommuniserer skallet med kjernen for å utføre den og deretter vise utdataene til brukeren.

👉 Gratis PDF-nedlasting: Shell Scripting Intervju Spørsmål og Svar


2) Hva er en Shell Scripting?

Shell-skripting er et åpen kildekode-dataprogram designet for å kjøres av Unix/Linux-skallet. Shell Scripting er et program for å skrive en rekke kommandoer som skallet skal utføres. Den kan kombinere lange og repeterende sekvenser av kommandoer til et enkelt og enkelt skript som kan lagres og utføres når som helst, noe som reduserer programmeringsinnsatsen.

Shell Scripting intervjuspørsmål


3) Hva er de forskjellige typene ofte brukte skjell på et typisk Linux-system?

csh,ksh,bash,Bourne . Det mest brukte og avanserte skallet som brukes i dag er "Bash".


4) Hva tilsvarer en snarvei som vi har et vindu på et Linux-system?

Snarveier lages ved hjelp av "lenker" på Linux. Det er to typer lenker som kan brukes, nemlig "myk lenke" og "hard lenke".


5) Hva er forskjellen mellom myke og harde lenker?

Myke lenker er lenker til filnavnet og kan også ligge på forskjellige filtyper; men harde lenker er lenker til inoden til filen og må være på samme filsystem som filens. Sletting av originalfilen gjør den myke lenken inaktiv (ødelagt lenke), men påvirker ikke den harde lenken (Hard lenke vil fortsatt få tilgang til en kopi av filen)


6) Hvordan vil du sende og få tilgang til argumenter til et skript i Linux?

Argumenter kan sendes som:

scriptName “Arg1” “Arg2″….”Argn” og kan nås inne i skriptet som $1 , $2 .. $n


7) Hva er forskjellen mellom $* og $@?

$@ behandler hvert siterte argument som separate argumenter, men $* vil vurdere hele settet med posisjonsparametere som en enkelt streng.


8) Bruk sed-kommandoen for å erstatte innholdet i filen (emulate tac-kommando)

Eg:

if cat fille
ABCD
EFGH

Da bør O/p være

EFGH
ABCD

sed '1! G; h;$!d' file1

Her legger G-kommandoen til mønsterrommet,

h-kommandoen kopierer mønsterbuffer for å holde buffer

og d-kommandoen sletter gjeldende mønsterplass.


9) Gitt en fil, erstatt all forekomst av ordet "ABC" med "DEF" fra 5th linje til slutt i bare de linjene som inneholder ordet "MNO"

sed –n '5,$p' file1|sed '/MNO/s/ABC/DEF/'

10) Gitt en fil, skriv en kommandosekvens for å finne antallet av hvert ord.

tr –s  "(backslash)040" <file1|tr –s  "(backslash)011"|tr "(backslash)040 (backslash)011" "(backslash)012" |uniq –c
where "(backslash)040" is octal equivalent of "space"

"(backslash)011" er en oktal ekvivalent av "tab-tegn" og

"(omvendt skråstrek)012" er en oktal ekvivalent av nylinjetegnet.


11) Hvordan finner du 99th linje i en fil med kun hale- og hodekommandoen?

hale +99 fil1|hode -1


12) Skriv ut 10th linje uten å bruke hale- og hodekommando.

sed –n '10p' file1

13) I bash-skallet mitt vil jeg at forespørselen min skal ha formatet '$"Present working directory":"vertsnavn"> og last inn en fil som inneholder en liste over brukerdefinerte funksjoner så snart jeg logger på, hvordan vil du automatisere dette ?

I bash-shell kan vi lage ".profile"-fil som automatisk blir påkalt så snart jeg logger på og skriver følgende syntaks inn i den.

export PS1='$ `pwd`:`hostname`>' .File1

Her er File1 filen som inneholder de brukerdefinerte funksjonene og "." påkaller denne filen i gjeldende skall.


14) Forklar om "s" tillatelsesbit i en fil?

"s"-bit kalles "sett bruker-id" (SUID)-bit.

"s" bit på en fil fører til at prosessen har rettighetene til eieren av filen under forekomsten av programmet.

For eksempel, utførelse av "passwd"-kommandoen for å endre gjeldende passord fører til at brukeren skriver sitt nye passord til skyggefilen selv om den har "root" som eier.


15) Jeg vil lage en katalog slik at alle i gruppen kan opprette en fil og få tilgang til en hvilken som helst persons fil i den, men ingen skal kunne slette en annen fil enn den han selv har laget.

Vi kan opprette katalogen som gir lese- og utføringstilgang til alle i gruppen og sette dens sticky bit "t" på som følger:

mkdir direc1
 
chmod g+wx direc1
 
chmod +t direc1

16) Hvordan kan du finne ut hvor lenge systemet har kjørt?

Vi kan finne dette ved å bruke kommandoen "oppetid".


17) Hvordan kan en hvilken som helst bruker finne ut all informasjon om en spesifikk bruker, for eksempel standardskallet, det virkelige navnet, standardkatalogen, når og hvor lenge han har brukt systemet?

finger "loginName" …hvor loginName er påloggingsnavnet til

brukeren hvis informasjon er forventet.


18) Hva er forskjellen mellom $$ og $!?

$$ gir prosess-ID-en til prosessen som utføres for øyeblikket, mens $! Viser prosess-ID-en til prosessen som nylig gikk i bakgrunnen.


19) Hva er zombieprosesser?

Dette er prosessene som har dødd, men hvis utgangsstatus fortsatt ikke er valgt av overordnet prosess. Disse prosessene, selv om de ikke er funksjonelle, har fortsatt sin prosess-ID-oppføring i prosesstabellen.


20) Hvordan vil du kopiere en fil fra en maskin til en annen?

Vi kan bruke verktøy som "ftp", "scp" eller "rsync" for å kopiere en fil fra en maskin til en annen.

For eksempel ved å bruke ftp:

FTP-vertsnavn

>sett fil1

> farvel

Over kopier, fil fil1 fra det lokale systemet til målsystemet hvis vertsnavn er spesifisert.


Shell Scripting intervjuspørsmål og svar for erfarne

21) Jeg ønsker å overvåke en loggfil som oppdateres kontinuerlig, hvilken kommando kan brukes for å oppnå dette mest effektivt?

Vi kan bruke tail -f filnavn. Dette vil føre til at bare standard siste 10 linjer vises på std o/p som kontinuerlig viser oppdateringsdelen av filen.


22) Jeg vil koble til en ekstern server og utføre noen kommandoer, hvordan kan jeg oppnå dette?

Vi kan bruke ssh for å gjøre dette:

ssh brukernavn@serverIP -p sshport

Eksempel

ssh root@122.52.251.171 -p 22

Når kommandoen ovenfor er utført, vil du bli bedt om å angi passordet


23) Jeg har 2 filer og jeg ønsker å skrive ut postene som er felles for begge.

Vi kan bruke "comm" kommandoen som følger:

comm -12 fil1 fil2 … 12 vil undertrykke innholdet som er

unik for 1st og 2nd fil henholdsvis.


24) Skriv et manus for å skrive ut de 10 første elementene i Fibonacci-serien.

  
#!/bin/sh
a=1
b=1
echo $a
echo $b
for I in 1 2 3 4 5 6 7 8
do
c=a
b=$a
b=$(($a+$c))
echo $b
done

25) Hvordan vil du koble til en databaseserver fra Linux?

Vi kan bruke isql-verktøyet som følger med åpen klientdriver som følger:

isql –S serverName –U brukernavn –P passord


26) Hva er de 3 standardstrømmene i Linux?

0 – Standardinngang1 – Standardutgang2 – Standardfeil


27) Jeg ønsker å lese alle input til kommandoen fra fil1 direkte all utdata til fil2 og feil til fil 3, hvordan kan jeg oppnå dette?

kommando fil1 1>fil2


28) Hva vil skje med min nåværende prosess når jeg utfører en kommando ved hjelp av exec?

"exec" overlegger den nylig forklede prosessen på den gjeldende prosessen; så når jeg utfører kommandoen ved å bruke exec, blir kommandoen utført på det gjeldende skallet uten å lage noen nye prosesser.

For eksempel utfører "exec ls" på ledeteksten vil utføre ls og når ls avsluttes, vil prosessen avsluttes


29) Hvordan vil du etterligne wc –l ved å bruke awk?

awk 'END {print NR} fileName'


30) Gitt en fil, finn antall linjer som inneholder ordet "ABC".

grep –c “ABC” fil1


31) Hva er forskjellen mellom grep og egrep?

egrep er utvidet grep som støtter ekstra grep-funksjoner som "+" (1 eller flere forekomster av et tidligere tegn),"?"(0 eller 1 forekomst av et tidligere tegn) og "|" (alternativ matching)


32) Hvordan sette en array i Linux?

Syntaks i ksh:

Set –A arrayname= (element1 element2 ….. element)
In bash
A=(element1 element2 element3 …. elementn)

33) Skriv ned syntaksen til “for ” loop

Syntaks:

for  iterator in (elements)
do
execute commands
done

34) Hvordan vil du finne den totale diskplassen som brukes av en bestemt bruker?

du -s /home/user1 ….der bruker1 er brukeren som den totale diskplassen må finnes for.


35) Skrive syntaksen for "hvis" betingelser i Linux?

syntax

If  condition is successful
then
execute commands
else
execute commands
fi

36) Hva er betydningen av $?

Kommandoen $? gir utgangsstatusen til den siste kommandoen som ble utført.


37) Hvordan sletter vi alle tomme linjer i en fil?

sed  '^ [(backslash)011(backslash)040]*$/d' file1

hvor (omvendt skråstrek)011 er en oktal ekvivalent av mellomrom og

(omvendt skråstrek)040 er en oktal ekvivalent av fanen


38) Hvordan setter jeg inn en linje "ABCDEF" for hver 100th linje i en fil?

sed '100i\ABCDEF' fil1


39) Skriv en kommandosekvens for å finne alle filene som er endret på mindre enn 2 dager, og skriv ut posttellingen for hver.

finne. –mtime -2 –exec wc –l {} \;


40) Hvordan kan jeg angi standard rwx-tillatelse til alle brukere på hver fil som er opprettet i gjeldende skall?

Vi kan bruke:

umask 777

Dette vil angi standard rwx-tillatelse for hver fil som er opprettet for hver bruker.


41) Hvordan kan vi finne prosessnavnet fra prosess-IDen?

Vi kan bruke "ps –p ProcessId"


42) Hva er de fire grunnleggende komponentene i hvert filsystem på Linux?

Bootblock, super block, inode block og Datablock finnes grunnleggende komponenter i hvert filsystem på Linux.


43) Hva er en støvelblokk?

Denne blokken inneholder et lite program kalt "Master Boot record" (MBR) som laster inn kjernen under oppstart av systemet.


44) Hva er en superblokk?

Superblokk inneholder all informasjon om filsystemet som størrelsen på filsystemet, blokkstørrelsen brukt av antallet ledige datablokker og liste over ledige inoder og datablokker.


45) Hva er en inodeblokk?

Denne blokken inneholder inoden for hver fil i filsystemet sammen med alle filattributtene bortsett fra navnet.


46) Hvordan kan jeg sende en e-post med en komprimert fil som vedlegg?

zip fil1.zip fil1|mailx –s "emne" Mottakers e-post-ID

E-post innhold

EOF


47) Hvordan lager vi kommandoaliaser i et skall?

alias Aliasname=”Kommando hvis alias skal opprettes”.


48) Hva er "c" og "b" tillatelsesfelt for en fil?

"c" og "b" tillatelsesfelt er vanligvis knyttet til en enhetsfil. Den spesifiserer om en fil er en spesialtegnfil eller en blokk spesialfil.


49) Hva er bruken av en shebang-line?

Shebang-linjen på toppen av hvert skript bestemmer plasseringen av motoren som skal brukes til å utføre skriptet.

Disse intervjuspørsmålene vil også hjelpe i din viva(orals)

Oppsummer dette innlegget med: