50 najdôležitejších otázok k rozhovoru pre systém Unix Odpovede

Anonim

Stiahnite si PDF

1) Čo je to UNIX?

Jedná sa o prenosný operačný systém, ktorý je navrhnutý pre efektívne fungovanie viacerých úloh aj pre viacerých používateľov. Jeho prenosnosť umožňuje prevádzku na rôznych hardvérových platformách. To bolo napísané je C a umožňuje používateľom vykonávať spracovanie a kontrolu pod shell.

2) Čo sú to filtre?

Termín filter sa často používa na označenie ľubovoľného programu, ktorý dokáže prijať vstup zo štandardného vstupu, vykonať s ním nejaký úkon a zapísať výsledky na štandardný výstup. Filter je tiež akýkoľvek program, ktorý je možné použiť medzi dvoma ďalšími programami v potrubí.

3) Aká je typická syntax, ktorá sa dodržiava pri vydávaní príkazov v prostredí shell?

Typická syntax príkazu v prostredí UNIX má formát:

Príkaz [-argument] [-argument] [--argument] [súbor]

4) Existuje spôsob, ako vymazať všetky súbory v aktuálnom adresári vrátane všetkých jeho podadresárov iba pomocou jedného príkazu?

Áno, je to možné. Na tento účel použite „rm -r *“. Príkaz rm slúži na mazanie súborov. Voľba -r vymaže adresáre a podadresáre vrátane súborov vo vnútri. Hviezdička predstavuje všetky položky.

5) Aký je hlavný rozdiel medzi možnosťami -v a -x, ktoré sa majú nastaviť?

Voľba -v opakuje každý príkaz skôr, ako budú nahradené argumenty a premenné; voľba -x opakuje príkazy po vykonaní zámeny.

6) Čo je jadro?

Jadro je operačný systém UNIX, ktorý je hlavným programom, ktorý riadi zdroje počítača, prideľuje ich rôznym používateľom a vykonáva rôzne úlohy. Jadro však nejedná priamo s používateľom. Namiesto toho spúšťa pre každého používateľa samostatný samostatný interaktívny program, ktorý sa nazýva shell, keď sa prihlási.

7) Čo je to Shell?

Shell funguje ako rozhranie medzi používateľom a systémom. Ako tlmočník príkazov shell prijíma príkazy a nastavuje ich na vykonávanie.

8) Aké sú kľúčové vlastnosti Korn Shell?

  • mechanizmus histórie so zabudovaným editorom, ktorý simuluje emacs alebo vi
  • vstavaná celočíselná aritmetika
  • možnosti manipulácie s reťazcami
  • príkaz aliasing
  • polia
  • kontrola práce

9) Čo sú to bežné škrupiny a aké sú ich ukazovatele?

  • sh - Bourneova škrupina
  • csh - C SHELL
  • bash - Bourne Again Shell
  • tcsh - vylepšený C Shell
  • zsh - Z SHELL
  • ksh - Korn SHELL

10) Odlíšte viac používateľov od viacerých úloh.

Multiuser znamená, že počítač môže používať súčasne viac osôb. Multitask znamená, že aj jediný používateľ môže mať počítač zapnutý viac ako jednu úlohu alebo program súčasne.

11) Čo je substitúcia príkazov?

Substitúcia príkazov je jedným z krokov, ktoré sa vykonávajú zakaždým, keď shell spracováva príkazy. Shell vykonáva iba tie príkazy, ktoré sú uzavreté v spätných úvodzovkách. To potom nahradí štandardný výstup príkazu a zobrazí sa na príkazovom riadku.

12) Čo je to adresár?

Každý súbor je priradený k adresáru. Adresár je špecializovaná forma súboru, ktorá uchováva zoznam všetkých súborov v ňom.

13) Čo je to inode?

Inode je položka vytvorená na časti disku vyčlenenej pre súborový systém. Inode obsahuje takmer všetky informácie o súbore. Zahŕňa umiestnenie na disku, kde sa súbor začína, veľkosť súboru, kedy bol súbor naposledy použitý pri poslednej zmene súboru, aké sú rôzne povolenia na čítanie, zápis a vykonávanie, kto je vlastníkom súboru a ďalšie informácie .

14) V adresári honky máte súbor s názvom tonky. Neskôr do tonky pridáte nový materiál. Aké zmeny sa uskutočnia v adresári, inode a súbore?

Položka adresára sa nezmení, pretože meno a číslo inódu zostanú nezmenené. V súbore inode sa aktualizuje veľkosť súboru, čas posledného prístupu a čas poslednej úpravy. V samotnom súbore sa pridá nový materiál.

15) Popíšte súborové systémy v systéme UNIX

Pochopenie súborových systémov v systéme UNIX súvisí s poznatkom, ako sú súbory a inódy uložené v systéme. Čo sa stane, je to, že disk alebo časť disku je odložená na ukladanie súborov a záznamov inode. Celá funkčná jednotka sa označuje ako súborový systém.

16) Odlíšte relatívnu cestu od absolútnej.

Relatívna cesta sa týka cesty vzhľadom na súčasnú cestu. Absolútna cesta na druhej strane označuje presnú cestu, na ktorú sa odkazuje z koreňového adresára.

17) Vysvetlite dôležitosť adresárov v systéme UNIX

Súbory v adresári môžu byť samotným adresárom; volalo by sa to podadresár originálu. Táto schopnosť umožňuje vyvinúť stromovú štruktúru adresárov a súborov, ktorá je zásadná pri udržiavaní organizačnej schémy.

18) Stručne opíšte povinnosti spoločnosti Shell

  • vykonávanie programu
  • nahradenie premennej a názvu súboru
  • Presmerovanie I / O
  • pripojenie potrubia
  • kontrola prostredia
  • interpretovaný programovací jazyk

19) Čo sú to premenné shellu?

Premenné shellu sú kombináciou názvu (identifikátora) a priradenej hodnoty, ktorá existuje v shelli. Tieto premenné môžu mať predvolené hodnoty alebo ich hodnoty je možné ručne nastaviť pomocou príslušného príkazu na priradenie. Príklady premenných shellu sú PATH, TERM a HOME.

20) Aké sú rozdiely medzi systémovým volaním, funkciou knižnice a príkazom UNIX?

Systémové volanie je súčasťou programovania pre jadro. Funkcia knižnice je program, ktorý nie je súčasťou jadra, ale ktorý je k dispozícii používateľom systému. Príkazy UNIX sú však samostatné programy; môžu do svojho programovania zahrnúť systémové volania aj knižničné funkcie.

21) Čo je to Bash Shell?

Je to voľný shell navrhnutý pre prácu v systéme UNIX. Ako predvolený shell pre väčšinu systémov založených na UNIX kombinuje funkcie, ktoré sú k dispozícii v prostredí C aj Korn Shell.

22) Vymenujte niektoré z najbežnejšie používaných sieťových príkazov v systéme UNIX

  • telnet - slúži na vzdialené prihlásenie
  • ping - požiadavka na ozvenu pre testovanie konektivity
  • su - príkaz na prepnutie používateľa
  • ftp - protokol na prenos súborov používaný na kopírovanie súborov
  • príkaz na zhromažďovanie informácií prstom

23) Odlíšte príkaz cmp od príkazu diff.

Príkaz cmp sa používa hlavne na porovnanie dvoch súborov po bajtoch, po ktorých sa zobrazí prvý nesúlad. Na druhej strane sa príkaz diff používa na označenie zmien, ktoré sa majú vykonať, aby sa tieto dva súbory navzájom zhodovali.

24) Na čo sa používa -l pri vypísaní adresára?

-l, ktorý sa bežne používa pri vypísaní príkazu ako ls, sa používa na zobrazenie súborov v dlhom formáte, jeden súbor na riadok. Dlhý formát označuje ďalšie informácie, ktoré sú spojené so súborom, ako napríklad vlastníctvo, povolenia, údaje a veľkosť súboru.

25) Čo je to potrubie?

Spojenie, reprezentované znakom spojenia "|", sa používa na spojenie dvoch alebo viacerých príkazov. Výstup prvého príkazu slúži ako vstup nasledujúceho príkazu atď.

26) Čo je superužívateľ?

Superuser je používateľ špeciálneho typu, ktorý má otvorený prístup ku všetkým súborom a príkazom v systéme. Upozorňujeme, že prihlásenie superusera je zvyčajne root a je chránené takzvaným heslom root.

27) Ako určíte a nastavíte cestu v systéme UNIX?

Zakaždým, keď zadáte príkaz, bude premenná s názvom PATH alebo cesta definovať, v ktorom adresári bude shell tento príkaz hľadať. V prípadoch, keď sa vrátila chybová správa, je možné, že príkaz nebol vo vašej ceste alebo že samotný príkaz neexistuje. Cestu môžete tiež nastaviť manuálne pomocou príkazu „set path = [cesta k adresáru]“.

28) Je možné vidieť informácie o procese počas jeho vykonávania?

Každý proces je jednoznačne identifikovaný identifikátorom procesu. Podrobnosti a stav procesu je možné zobraziť pomocou príkazu ps.

29) Aká je štandardná konvencia, ktorá sa dodržiava pri pomenovaní súborov v systéme UNIX?

Jedným dôležitým pravidlom pri pomenovávaní súborov je, že nie sú povolené znaky, ktoré majú špeciálny význam, napríklad * / & a%. Adresár, ktorý je špeciálnym typom súboru, sa riadi rovnakou konvenciou pomenovania ako adresár súborov. Používajú sa písmená a číslice, ako aj znaky ako podčiarknutie a bodka.

30) Čím to je, že sa neodporúča používať root ako predvolené prihlásenie?

Účet root je veľmi dôležitý a pri nesprávnom použití môže ľahko viesť k poškodeniu systému. Je to tak preto, lebo ochranné opatrenia, ktoré sa zvyčajne vzťahujú na používateľské účty, sa nevzťahujú na účet root.

31) Na čo sa používa príkaz na odpalisko?

Príkaz tee robí dve veci: jedna je získať dáta zo štandardného vstupu a odoslať ich na štandardný výstup; druhá je, že presmeruje kópiu týchto vstupných údajov do súboru, ktorý bol určený.

32) Odlíšte príkaz mačky od väčšieho príkazu.

Pri použití príkazu cat na zobrazenie obsahu súboru by sa veľké údaje, ktoré sa nezmestia na obrazovku, bez pauzy posunuli preč, čo sťažilo ich prezeranie. Na druhej strane je v takýchto prípadoch vhodnejšie použiť príkaz more, pretože bude zobrazovať obsah súboru po jednej stránke.

33) Čo je to analýza?

Analýza je proces rozdelenia príkazového riadku na slová. Toto je možné pomocou oddeľovačov a medzier. V prípade, že sú súčasťou príkazu karty alebo viac medzier, budú nakoniec nahradené jednou medzerou.

34) Čo je pid?

Pid je skratka pre Process ID. Slúži predovšetkým na identifikáciu každého procesu, ktorý beží v systéme UNIX, či už beží na popredí alebo na pozadí. Každý pid sa považuje za jedinečný.

35) Ako systém vie, kde jeden príkaz končí a iný začína?

Za normálnych okolností funguje ako smerovka znak nového riadku, ktorý sa generuje klávesom ENTER alebo RETURN. Bodkočiarka a ampersandové znaky však môžu slúžiť aj ako zakončenia príkazov.

37) Čo je to výklad divokou kartou?

Keď príkazový riadok obsahuje zástupné znaky, ako napríklad „*“ alebo „?“. Nahradí ich shell s triedeným zoznamom súborov, ktorých vzor sa zhoduje so vstupným príkazom. Znaky zástupných znakov sa používajú na nastavenie zoznamu súborov na spracovanie, namiesto toho, aby ich určovali po jednom.

38) Aký je výstup tohto príkazu? $ kto | sort -logfile> newfile

V tomto príkaze sa výstup z príkazu „kto“ stane vstupom do príkazu „zoradiť“. Súčasne príkaz „sort“ otvorí súbor s protokolom, usporiada ho spolu s výstupom z príkazu „who“ a umiestni konečný triedený výstup do súboru newfile.

39) Ako prechádzate z ľubovoľného typu používateľa na typ superužívateľa?

Ak chcete prejsť z ľubovoľného typu používateľa na superužívateľa, použite príkaz su. Pred udelením úplného prístupového oprávnenia vás však požiada, aby ste zadali správne heslo superužívateľa.

40) Aký by bol efekt zmeny hodnoty PATH na:.: / Usr / della / bin: / bin: / usr / bin

To by spôsobilo, že by sa shell po hľadaní v aktuálnom adresári a pred hľadaním v adresári / bin pri hľadaní príkazového súboru pozrel do adresára / usr / della / bin.

41) Napíšte príkaz, ktorý zobrazí súbory v aktuálnom adresári vo farebnom dlhom formáte.

Odpoveď: ls -l --color

42) Napíšte príkaz, ktorý vyhľadá všetky textové súbory v adresári tak, aby neobsahoval slovo „amazing“ v žiadnej podobe (to znamená, že musí obsahovať slová Amazing, AMAZING alebo aMAZINg)

Odpoveď:

grep -vi amazing *.txt

43) Napíšte príkaz, ktorý vygeneruje zoradený obsah súboru s názvom IN.TXT a umiestni výstup do iného súboru s názvom OUT.TXT, pričom súčasne vylučuje duplicitné položky.

Odpoveď:

sort IN.TXT | uniq > OUT.TXT

44) Napíšte príkaz, ktorý umožní systému UNIX vypnúť do 15 minút, potom vykoná reštart.

Odpoveď:

/sbin/shutdown -r +15

45) Aký príkaz zmení vašu výzvu na MYPROMPT?

Na zmenu výzvy použijeme príkaz PS1, napríklad tento:

PS1 = 'MYPROMPT:'

46) Čo robí tento príkaz? krmivo pre mačky 1> mačiatko

Odpoveď: presmeruje výstup krmiva pre mačky do súboru kitty; príkaz je rovnaký ako: krmivo pre mačky> mačiatko

47) Čo je zlé na tomto interaktívnom skripte shell?

echo Aký je to mesiac? prečítať $ monthecho $ month je rovnako dobrý mesiac ako ktorýkoľvek iný.

Odpoveď: Otázniku by sa malo pôvodne uniknúť (\?), Aby sa nevykladal ako metaznak shell. Po druhé, malo by sa to čítať mesiac, nie čítať $ mesiac.

48) Napíšte shell skript, ktorý žiada o vek používateľa a potom ho zopakuje, spolu s vhodným komentárom.

Odpoveď:

echo Hello! What\'s your age\?read ageecho $age! I\'ll be obsolete by that age!

49) Napíšte skript, ktorý vytlačí informácie o dátume v tomto poradí: čas, deň v týždni, číslo dňa, mesiac, rok (vzorový výstup: 17:34:51 PDT ne 12. februára 2012)

Odpoveď:

set 'date'echo $4 $5 $1 $3 $2 $6

50) Napíšte skript, ktorý ako výstup zobrazí nasledujúce:

Daj mi U!

U!

Dajte ma N!

N!

Daj mi ja!

Ja!

Daj mi X!

X!

Odpoveď: pre i v UNI Xdo

echo Give me a $i!echo $i!done