50 Shell Scripting Intervju Pitanja i odgovori (2026)

Ovdje su pitanja i odgovori na intervjuu za Shell Scripting za svjeลพije i iskusnije kandidate koji ฤ‡e dobiti posao iz snova.

 

Pitanja i odgovori za intervju za skriptiranje Linux ljuske

1) ล to je ลกkoljka?

Shell je suฤelje izmeฤ‘u korisnika i kernela. Iako moลพe postojati samo jedna jezgra; sustav moลพe imati viลกe ljuski koje rade istovremeno. Dakle, kad god korisnik unese naredbu putem tipkovnice, ljuska komunicira s jezgrom kako bi je izvrลกila i zatim prikazala izlaz korisniku.

๐Ÿ‘‰ Besplatno preuzimanje PDF-a: Pitanja i odgovori za intervju za Shell Scripting


2) ล to je Shell skriptiranje?

Shell skriptiranje je raฤunalni program otvorenog koda dizajniran da ga pokreฤ‡e Unix/Linux ljuska. Shell Scripting je program za pisanje niza naredbi koje ลกkoljka izvrลกava. Moลพe kombinirati duge i ponavljajuฤ‡e sekvence naredbi u jednu i jednostavnu skriptu koja se moลพe pohraniti i izvrลกiti u bilo kojem trenutku, ลกto smanjuje programske napore.

Shell Scripting Pitanja za intervju


3) Koje su razliฤite vrste najฤeลกฤ‡e koriลกtenih ljuski na tipiฤnom Linux sustavu?

csh,ksh,bash,Bourne. Najฤeลกฤ‡e koriลกtena i napredna ljuska koja se danas koristi je "Bash".


4) ล to je ekvivalent preฤacu datoteke da imamo prozor na Linux sustavu?

Preฤaci se stvaraju pomoฤ‡u "veza" na Linuxu. Postoje dvije vrste veza koje se mogu koristiti, a to su "meka veza" i "tvrda veza".


5) Koja je razlika izmeฤ‘u mekih i tvrdih veza?

Meke veze su poveznice na naziv datoteke i mogu se takoฤ‘er nalaziti na razliฤitim datoteฤnim sustavima; meฤ‘utim, tvrde veze povezuju na inode datoteke i moraju biti na istom datoteฤnom sustavu kao i datoteka. Brisanje izvorne datoteke ฤini meku vezu neaktivnom (neispravna veza), ali ne utjeฤe na tvrdu vezu (tvrda veza ฤ‡e i dalje pristupati kopiji datoteke)


6) Kako ฤ‡ete proslijediti i pristupiti argumentima skripti u Linuxu?

Argumenti se mogu proslijediti kao:

scriptName โ€œArg1โ€ โ€œArg2โ€ณโ€ฆ.โ€Argnโ€ i moลพe mu se pristupiti unutar skripte kao $1 , $2 .. $n


7) Koja je razlika izmeฤ‘u $* i $@?

$@ tretira svaki citirani argument kao zasebni argument, ali $* ฤ‡e cijeli skup pozicijskih parametara smatrati jednim nizom.


8) Koristite naredbu sed za zamjenu sadrลพaja datoteke (emulirajte naredbu tac)

npr:

if cat fille
ABCD
EFGH

Onda bi trebao biti O/p

EFGH
ABCD

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

Ovdje se G naredba dodaje prostoru uzorka,

h naredba kopira meฤ‘uspremnik uzorka u meฤ‘uspremnik za zadrลพavanje

i naredba d briลกe trenutni prostor uzorka.


9) S obzirom na datoteku, zamijenite sve rijeฤi "ABC" s "DEF" iz 5th retka do kraja samo u onim recima koji sadrลพe rijeฤ "MNO"

sed โ€“n '5,$p' file1|sed '/MNO/s/ABC/DEF/'

10) Zadanu datoteku, napiลกite niz naredbi da biste pronaลกli broj svake rijeฤi.

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"

โ€œ(kosa crta obrnuto)011โ€ je oktalni ekvivalent โ€œznaka tabulatorโ€ i

โ€œ(obrnuta kosa crta)012โ€ oktalni je ekvivalent znaka novog retka.


11) Kako ฤ‡ete pronaฤ‡i 99th redak datoteke koristeฤ‡i samo naredbu tail i head?

rep +99 turpija1|glava -1


12) Ispiลกite 10th linija bez koriลกtenja naredbe rep i glava.

sed โ€“n '10p' file1

13) U svojoj bash ljusci ลพelim da moj upit bude u formatu '$โ€Present working directoryโ€:โ€hostnameโ€> i da uฤitava datoteku koja sadrลพi popis korisniฤki definiranih funkcija ฤim se prijavim, kako ฤ‡ete to automatizirati ?

U bash ljusci moลพemo stvoriti datoteku ".profile" koja se automatski poziva ฤim se prijavim i upiลกem sljedeฤ‡u sintaksu u nju.

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

Ovdje je File1 datoteka koja sadrลพi korisniฤki definirane funkcije i "." poziva ovu datoteku u trenutnoj ljusci.


14) Objasnite o โ€œsโ€ bitu dopuลกtenja u datoteci?

โ€œsโ€ bit se naziva โ€œset user idโ€ (SUID) bit.

Bit โ€œsโ€ na datoteci uzrokuje da proces ima privilegije vlasnika datoteke tijekom instance programa.

Na primjer, izvrลกavanje naredbe โ€œpasswdโ€ za promjenu trenutne lozinke uzrokuje da korisnik zapisuje svoju novu lozinku u datoteku sjena iako ima โ€œrootโ€ kao vlasnik.


15) ลฝelim stvoriti direktorij tako da bilo tko u grupi moลพe stvoriti datoteku i pristupiti datoteci bilo koje osobe u njoj, ali nitko ne bi trebao moฤ‡i izbrisati datoteku osim one koju je sam stvorio.

Moลพemo stvoriti direktorij dajuฤ‡i pristup ฤitanju i izvrลกavanju svima u grupi i postavljajuฤ‡i njegov ljepljivi bit โ€œtโ€ na sljedeฤ‡i naฤin:

mkdir direc1
 
chmod g+wx direc1
 
chmod +t direc1

16) Kako moลพete saznati koliko dugo sustav radi?

To moลพemo pronaฤ‡i pomoฤ‡u naredbe "uptime".


17) Kako bilo koji korisnik moลพe saznati sve informacije o odreฤ‘enom korisniku poput njegove zadane ljuske, stvarnog imena, zadanog direktorija, kada i koliko dugo koristi sustav?

finger โ€œloginNameโ€ โ€ฆgdje je loginName ime za prijavu

korisnik ฤije se informacije oฤekuju.


18) Koja je razlika izmeฤ‘u $$ i $!?

$$ daje ID procesa koji se trenutno izvodi dok $! Prikazuje ID procesa koji je nedavno otiลกao u pozadinu.


19) ล to su zombi procesi?

To su procesi koji su umrli, ali ฤiji izlazni status joลก uvijek nije odabran od strane nadreฤ‘enog procesa. Ovi procesi, ฤak i ako nisu funkcionalni, i dalje imaju svoj ID proces u tablici procesa.


20) Kako ฤ‡ete kopirati datoteku s jednog stroja na drugi?

Moลพemo koristiti usluลพne programe kao ลกto su "ftp", "scp" ili "rsync" za kopiranje datoteke s jednog raฤunala na drugo.

Npr. koriลกtenje ftp-a:

FTP naziv hosta

>stavi file1

> bok

Iznad kopija, datoteka file1 s lokalnog sustava na odrediลกni sustav ฤiji je naziv glavnog raฤunala naveden.


Pitanja i odgovori za intervju za Shell Scripting za iskusne

21) ลฝelim pratiti datoteku dnevnika koja se stalno aลพurira, koja se naredba moลพe koristiti za najuฤinkovitije postizanje toga?

Moลพemo koristiti tail โ€“f naziv datoteke. To ฤ‡e uzrokovati prikaz samo zadanih zadnjih 10 redaka na std o/p koji kontinuirano prikazuje dio datoteke koji se aลพurira.


22) ลฝelim se spojiti na udaljeni posluลพitelj i izvrลกiti neke naredbe, kako to mogu postiฤ‡i?

Za ovo moลพemo koristiti ssh:

ssh korisniฤko ime@IP posluลพitelja -p sshport

Primjer

ssh root@122.52.251.171 -p 22

Nakon ลกto se gornja naredba izvrลกi, od vas ฤ‡e se traลพiti da unesete lozinku


23) Imam 2 datoteke i ลพelim ispisati zapise koji su zajedniฤki za obje.

Naredbu โ€œcommโ€ moลพemo koristiti na sljedeฤ‡i naฤin:

comm -12 file1 file2 โ€ฆ 12 ฤ‡e potisnuti sadrลพaj koji su

jedinstveno za 1st i 2nd datoteka odnosno.


24) Napiลกite skriptu za ispis prvih 10 elemenata Fibonaccijevog niza.

  
#!/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) Kako ฤ‡ete se povezati s posluลพiteljem baze podataka iz Linuxa?

Moลพemo koristiti isql usluลพni program koji dolazi s otvorenim upravljaฤkim programom klijenta na sljedeฤ‡i naฤin:

isql โ€“S serverName โ€“U korisniฤko ime โ€“P lozinka


26) Koja su 3 standardna toka u Linuxu?

0 โ€“ Standardni ulaz1 โ€“ Standardni izlaz2 โ€“ Standardna pogreลกka


27) ลฝelim proฤitati sav ulaz u naredbu iz datoteke 1, usmjeriti sav izlaz u datoteku 2, a pogreลกku u datoteku 3, kako to mogu postiฤ‡i?

naredba datoteka1 1>datoteka2


28) ล to ฤ‡e se dogoditi s mojim trenutnim procesom kada izvrลกim naredbu koristeฤ‡i exec?

โ€œexecโ€ prekriva novo raฤvasti proces na trenutnom procesu; pa kad izvrลกim naredbu koristeฤ‡i exec, naredba se izvrลกava na trenutnoj ljusci bez stvaranja novih procesa.

Npr. Izvrลกavanje "exec ls" na naredbenom retku ฤ‡e izvrลกiti ls i kada ls izaฤ‘e, proces ฤ‡e se ugasiti


29) Kako ฤ‡ete emulirati wc โ€“l koristeฤ‡i awk?

awk 'END {print NR} fileName'


30) U datoteci pronaฤ‘ite broj redaka koji sadrลพe rijeฤ "ABC".

grep โ€“c โ€œABCโ€ datoteka1


31) Koja je razlika izmeฤ‘u grep i egrep?

egrep je proลกireni grep koji podrลพava dodane grep znaฤajke kao ลกto su โ€œ+โ€ (1 ili viลกe pojavljivanja prethodnog znaka),โ€?โ€ (0 ili 1 pojavljivanje prethodnog znaka) i โ€œ|โ€ (alternativno podudaranje)


32) Kako postaviti niz u Linuxu?

Sintaksa u ksh:

Set โ€“A arrayname= (element1 element2 โ€ฆ.. element)
In bash
A=(element1 element2 element3 โ€ฆ. elementn)

33) Zapiลกite sintaksu "for" petlje

Sintaksa:

for  iterator in (elements)
do
execute commands
done

34) Kako ฤ‡ete pronaฤ‡i ukupni prostor na disku koji koristi odreฤ‘eni korisnik?

du -s /home/user1 โ€ฆ.gdje je korisnik1 korisnik za kojeg treba pronaฤ‡i ukupni prostor na disku.


35) Napiลกite sintaksu za "if" uvjete u Linuxu?

Sintaksa

If  condition is successful
then
execute commands
else
execute commands
fi

36) Koje je znaฤenje $?

Naredba $? daje status izlaza posljednje izvrลกene naredbe.


37) Kako moลพemo izbrisati sve prazne retke u datoteci?

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

gdje je (obrnuta kosa crta)011 oktalni ekvivalent razmaka i

(obrnuta kosa crta)040 je oktalni ekvivalent tabulatoru


38) Kako ฤ‡u umetnuti redak โ€œABCDEFโ€ na svakih 100th linija datoteke?

sed '100i\ABCDEF' datoteka1


39) Napiลกite niz naredbi za pronalaลพenje svih datoteka izmijenjenih u manje od 2 dana i ispis broja zapisa za svaku.

pronaฤ‡i . โ€“mtime -2 โ€“exec wc โ€“l {} \;


40) Kako mogu postaviti zadanu rwx dozvolu za sve korisnike na svakoj datoteci koja je stvorena u trenutnoj ljusci?

Moลพemo koristiti:

umask 777

Ovo ฤ‡e postaviti zadanu rwx dozvolu za svaku datoteku koja je stvorena za svakog korisnika.


41) Kako moลพemo pronaฤ‡i naziv procesa iz ID-a njegovog procesa?

Moลพemo koristiti "ps โ€“p ProcessId"


42) Koje su ฤetiri temeljne komponente svakog datoteฤnog sustava na Linuxu?

Bootblock, super block, inode block i Datablock temeljne su komponente svakog datoteฤnog sustava na Linuxu.


43) ล to je blok za pokretanje?

Ovaj blok sadrลพi mali program pod nazivom "Master Boot record" (MBR) koji uฤitava kernel tijekom pokretanja sustava.


44) ล to je super blok?

Super blok sadrลพi sve informacije o datoteฤnom sustavu kao ลกto je veliฤina datoteฤnog sustava, veliฤina bloka koja se koristi prema broju slobodnih blokova podataka i popis slobodnih inodeova i blokova podataka.


45) ล to je blok inode?

Ovaj blok sadrลพi inode za svaku datoteku datoteฤnog sustava zajedno sa svim atributima datoteke osim njenog naziva.


46) Kako mogu poslati e-poลกtu s komprimiranom datotekom kao privitkom?

zip file1.zip file1|mailx โ€“s โ€œsubjectโ€ ID e-poลกte primatelja

Sadrลพaj e-poลกte

EOF


47) Kako stvaramo pseudonime naredbi u ljusci?

alias Aliasname=โ€Naredba ฤiji alias treba kreiratiโ€.


48) ล to su "c" i "b" polja dopuลกtenja datoteke?

"c" i "b" polja dopuลกtenja opฤ‡enito su povezani s datotekom ureฤ‘aja. Odreฤ‘uje je li datoteka datoteka s posebnim znakovima ili datoteka s posebnim blokovima.


49) ฤŒemu sluลพi shebang linija?

Shebang linija na vrhu svake skripte odreฤ‘uje lokaciju stroja koji ฤ‡e se koristiti za izvrลกavanje skripte.

Ova pitanja za intervju takoฤ‘er ฤ‡e vam pomoฤ‡i u vaลกem ลพivotu

Saลพmite ovu objavu uz: