Змест[Схаваць][Паказаць]
- 1. Што такое абалонка?
- 2. Што такое Shell Scripting?
- 3. Растлумачце перавагі сцэнарыяў абалонкі.
- 4. Апішыце праграмаванне GUI.
- 5. Што такое суперблок у праграмаванні абалонкі?
- 6. Пералічыце шматлікія віды даступных ракавін.
- 7. Напішыце адрозненне паміж Bourne Shell і C Shell.
- 8. Што такое зменныя Shell?
- 9. Якія віды зменных ёсць у Shell Script?
- 10. Якая каманда выкарыстоўваецца для запуску файла абалонкі?
- 11. Што вы можаце сказаць мне пра сцэнары Super Block in Shell?
- 12. Што такое метасімвал?
- 13. Якая розніца паміж мяккімі і жорсткімі спасылкамі?
- 14. Што азначае радок Shebang у Shell Scripting?
- 15. Праз якія некалькі этапаў праходзіць працэс Linux?
- 16. Апішыце Crontab.
- 17. Што такое кантрольныя інструкцыі?
- 18. У чым розніца паміж $* і $@?
- 19. Калі ласка, растлумачце, як вы параўноўваеце радкі ў сцэнарыі абалонкі.
- 20. Як я магу ствараць, чытаць і выдаляць файлы?
- 21. Ці можна адрозніць жорсткія і мяккія спасылкі ў сцэнарыях абалонкі?
- 22. Як вы будзеце ліквідаваць памылкі ў праграме абалонкі?
- 23. Колькі блокаў у файлавай сістэме?
- 24. Чаму bash з'яўляецца слаба тыпізаванай мовай?
- 25. Колькі часу мае зменная ў сцэнарыі абалонкі?
- 26. Назавіце каманду замены рэха.
- 27. Дайце вызначэнне IFS
- 28. Ці можна запускаць шматлікія скрыпты ў абалонцы?
- 29. Якія рэжымы ёсць у рэдактараў vi?
- 30. Якая розніца паміж $! і $$?
- 31. Што азначае $#?
- 32. Назавіце каманду, якая выкарыстоўваецца для стварэння рэзервовай копіі.
- 33. Калі недарэчна выкарыстоўваць Shell Scripting?
- 34. Як вы збіраецеся падключыцца да сервера базы дадзеных з Linux?
- 35. Што такое два камандных файла crontab?
- 36. Якія тры розныя сродкі абароны UNIX для файла або даных?
- 37. Коратка растлумачце каманду sed на прыкладзе.
- 38. Якая мэта інструментаў, якія пастаўляюцца з адкрытым кліенцкім драйверам, у сценарыях абалонкі?
- 49. Назавіце каманду, якую трэба выкарыстоўваць для вызначэння працягласці сістэмы.
- 40. Зрабіце скрыпт для дадання шматлікіх значэнняў.
- 41. Стварыце прыклад функцыі.
- заключэнне
Скрыпт абалонкі - гэта камп'ютэрная праграма або інтэрпрэтатар каманднага радка, які прызначаны для запуску абалонкай Unix. Самым прыемным аспектам стварэння скрыпта абалонкі з'яўляецца тое, што інструкцыі і сінтаксіс ідэнтычныя тым, якія ўводзяцца непасрэдна ў камандным радку.
Linux - гэта папулярная аперацыйная сістэма з адкрытым зыходным кодам, вядомая высокай абароненасцю і інтэрфейсам каманднага радка. Для пачаткоўцаў інжынераў DevOps жыццёва важна разумець сцэнары абалонкі або bash.
Калі вы знаёмыя са сцэнарыямі абалонкі і рыхтуецеся да сумоўя, у гэтым артыкуле пра пытанні і адказы на інтэрв'ю па сцэнарыях абалонкі вы знойдзеце лепшыя пытанні для інтэрв'ю па сцэнарыях абалонкі, якія палегчаць вашу падрыхтоўку.
1. Што такое абалонка?
Абалонка служыць мостам паміж карыстальнікам і ядром. Нягледзячы на тое, што можа быць толькі адно ядро, у сістэме можа працаваць некалькі абалонак адначасова.
У выніку кожны раз, калі карыстальнік уводзіць каманду з клавіятуры, абалонка размаўляе з ядром, каб выканаць яе, а затым адлюстроўвае вынікі для карыстальніка.
2. Што такое Shell Scripting?
Shell Scripting - гэта бясплатнае кампутарнае праграмнае забеспячэнне з адкрытым зыходным кодам, якое працуе ў абалонцы Unix/Linux. Праграмнае забеспячэнне Shell Scripting дазваляе вам напісаць шэраг каманд, якія будзе выконваць абалонка.
Ён можа інтэграваць працяглыя і паўтаральныя паслядоўнасці каманд у адзін і просты сцэнар, які можна захаваць і выканаць у любы час, памяншаючы намаганні па праграмаванні.
3. Растлумачце перавагі сцэнарыяў абалонкі.
- Амаль кожная сучасная аперацыйная сістэма, уключаючы UNIX, Linux, BSD і Mac OS X, можа запускаць скрыпты абалонкі, паколькі яны ствараюцца на інтэрпрэтаванай мове.
- Інтэрактыўны інструмент адладкі, а таксама хуткі старт.
- Гэта эканоміць час, дапамагаючы аўтаматызаваць адміністрацыйныя абавязкі.
- Праграмістам не трэба карэктаваць свой сінтаксіс, таму што каманда і сінтаксіс такія ж, як і тыя, якія змяшчаюцца непасрэдна ў камандным радку.
- Скрыпты абалонкі простыя ў выкарыстанні і напісанні.
- З дапамогай гэтага інструмента можна ствараць праграмныя прыкладанні ў адпаведнасці з адпаведнымі платформамі.
- Замест разавых інструкцый іх можна выкарыстоўваць для масавага выканання.
- Вы можаце выкарыстоўваць яго для стварэння ўласнай аперацыйнай сістэмы з неабходнымі функцыямі.
4. Апішыце праграмаванне GUI.
Графічны Карыстацкі інтэрфейс Праграмаванне (GUI), неабходнае для працы камп'ютара і праграм, называецца напісаннем сцэнарыяў GUI. Ён працуе з некалькімі аперацыйнымі сістэмамі і выкарыстоўваецца для кіравання рознымі праграмамі.
5. Што такое суперблок у праграмаванні абалонкі?
Праграмнае забеспячэнне пад назвай superblock захоўвае запісы пэўных файлавых сістэм. Памер, колькасць запоўненых і пустых блокаў, выкарыстанне даных, памер групы блокаў, размяшчэнне і памер табліц inode адносяцца да ўласцівасцей, якія можна знайсці ў блоку.
6. Пералічыце шматлікія віды даступных ракавін.
- Абалонка Борна: пры выкарыстанні абалонкі тыпу Борна стандартным запытам з'яўляецца сімвал $.
- Абалонка C: пры выкарыстанні абалонкі тыпу C стандартным запытам з'яўляецца сімвал %.
- Абалонка Korn: Korn - гэта праграма для стварэння сцэнарыяў Shell на аснове Unix, першапачаткова заснаваная на сцэнарыях Bash Shell. Гэтая абалонка вельмі складаная і выкарыстоўвае высокі ўзровень мова праграмавання.
- TCSH: не існуе адной поўнай формы TCSH. Гэта як ёсць. TCSH - гэта больш складаная версія абалонкі Berkeley Unix C. Цяпер ён падтрымлівае сінтаксіс C.
7. Напішыце адрозненне паміж Bourne Shell і C Shell.
Bourne Shell: кампактнасць і хуткасць адрозніваюць яго ад іншых снарадаў. Аднак інтэрактыўныя элементы, такія як магчымасць запамінання папярэдніх запытаў, адсутнічаюць. Акрамя таго, арыфметыка і лагічныя выразы не падтрымліваюцца абалонкай Борна.
C Shell: гэта ўдасканаленне UNIX, якое ўключае такія інтэрактыўныя функцыі, як псеўданімы і гісторыя каманд. Ён змяшчае магчымасці лёгкага праграмавання ў дадатак да ўбудаванай арыфметыкі і граматыкі выразаў.
8. Што такое зменныя Shell?
Зменныя Shell з'яўляюцца асновай кожнай праграмы або сцэнарыя Shell. Зменныя дазваляюць Shell захоўваць і змяняць даныя ў дадатку Shell. Радковыя зменныя звычайна выкарыстоўваюцца для захоўвання зменных абалонкі.
9. Якія віды зменных ёсць у Shell Script?
Аперацыйная сістэма (Linux) стварае і вызначае сістэмныя зменныя. Гэтыя зменныя часта вызначаюцца вялікімі літарамі і могуць быць правераны з дапамогай каманды «ўсталяваць».
Вызначаныя карыстальнікам зменныя ствараюцца або задаюцца карыстальнікамі сістэмы, і іх значэнні можна праверыць, выканаўшы каманду «рэха».
10. Якая каманда выкарыстоўваецца для запуску файла абалонкі?
11. Што вы можаце сказаць мне пра сцэнары Super Block in Shell?
Super Block - гэта проста праграмнае забеспячэнне, якое захоўвае інфармацыю аб пэўных файлавых сістэмах.
Суперблок змяшчае такую інфармацыю, як памер блока, колькасць пустых і поўных блокаў і іх адпаведную колькасць, памер і размяшчэнне табліц inode, карту блокаў дыска, а таксама статыстыку выкарыстання і памер груп блокаў.
12. Што такое метасімвал?
Метасімвал - гэта ўнікальны сімвал, які ўключаны ў праграму або поле дадзеных абалонкі. Ён дае інфармацыю пра іншых персанажаў. Каб пералічыць усе файлы, якія пачынаюцца з сімвала 's', напрыклад, выкарыстоўвайце каманду 'ls s*'.
13. Якая розніца паміж мяккімі і жорсткімі спасылкамі?
Мяккія спасылкі звязаны з імем файла і могуць знаходзіцца ў розных файлавых сістэмах; у той час як жорсткія спасылкі звязаны з inode файла і павінны знаходзіцца ў той жа файлавай сістэме, што і файл.
Выдаленне зыходнага файла робіць мяккую спасылку неактыўнай (спасылка не працуе), але не ўплывае на жорсткае злучэнне, і жорсткая спасылка па-ранейшаму будзе атрымліваць доступ да копіі файла.
14. Што азначае радок Shebang у Shell Scripting?
Радок Shebang звычайна знаходзіцца ў пачатку скрыпту, напрыклад, #!/bin/sh. Гэты радок вызначае становішча рухавіка. Гэты рухавік, як правіла, той, які запускае скрыпт.
15. Праз якія некалькі этапаў праходзіць працэс Linux?
Як правіла, працэс Linux праходзіць праз наступныя чатыры этапы:
- Чаканне: рэсурс чакае працэс Linux.
- Працуе: Прама зараз працуе працэс Linux.
- Спынена: пасля паспяховага выканання працэс Linux спыняецца.
- ZombieeПрацэс спыніўся, але ў табліцы працэсаў ён па-ранейшаму паказваецца як актыўны.
16. Апішыце Crontab.
Crontab расшыфроўваецца як табліца cron, паколькі для выканання заданняў выкарыстоўваецца планавальнік заданняў «cron». Гэта набор каманд, якія рэгулярна выконваюцца, і імя каманды таксама кіруе спісам.
Расклад і інструмент, які выкарыстоўваецца для змены раскладу, называюцца Crontab.
17. Што такое кантрольныя інструкцыі?
Інструкцыі кіравання паказваюць, як будуць выконвацца розныя інструкцыі сцэнарыя. Яны звычайна выкарыстоўваюцца ў праграмах Shell для ацэнкі кантроль патоку.
Без гэтых інструкцый выкананне скрыпта абалонкі працягваецца паслядоўна. Інструкцыі кіравання ўплываюць на тое, як ідзе выкананне ў праграмах абалонкі.
18. У чым розніца паміж $* і $@?
$@ разглядае кожны аргумент у цытатах як асобны аргумент, у той час як $* лічыць поўны набор пазіцыйных параметраў адным радком.
19. Калі ласка, растлумачце, як вы параўноўваеце радкі ў сцэнарыі абалонкі.
Каманда 'test' выкарыстоўваецца для параўнання тэкставых радкоў. Гэтая каманда параўноўвае тэкставыя радкі, параўноўваючы сімвалы кожнай радкі.
20. Як я магу ствараць, чытаць і выдаляць файлы?
21. Ці можна адрозніць жорсткія і мяккія спасылкі ў сцэнарыях абалонкі?
Сцэнарыі абалонкі - гэта моцнае рашэнне, якое, як і Windows, выкарыстоўвае спасылкі для стварэння ярлыкоў. Мяккія спасылкі не маюць фіксаванага месцазнаходжання і могуць быць знойдзены ўсюды ў адной файлавай сістэме.
Звычайна яны прывязаныя да імя файла. Жорсткія спасылкі, з іншага боку, застаюцца ў той жа файлавай сістэме. У большасці сітуацый жорсткія сувязі звязаны з вузламі і маюць пэўнае фіксаванае становішча.
22. Як вы будзеце ліквідаваць памылкі ў праграме абалонкі?
Некаторыя распаўсюджаныя спосабы ліквідацыі памылак сцэнарыя:
- Set-x выкарыстоўваецца, каб дазволіць адладку.
- Устаўце заявы адладкі ў скрыпт абалонкі, каб паказаць інфармацыю, якая дапамагае ў выяўленні праблемы.
23. Колькі блокаў у файлавай сістэме?
- Суперблок: гэты блок дае падрабязную інфармацыю аб стане файлавай сістэмы, уключаючы памер блока, памер групы блокаў, дадзеныя выкарыстання, колькасць пустых і запоўненых блокаў, памер і размяшчэнне табліц inode і г.д.
- Загрузачны блок: у гэтым блоку захоўваецца праграма загрузніка, якая запускаецца, калі карыстальнік загружае хост-сістэму.
- Блок даных: гэты блок даных змяшчае змесціва файла файлавай сістэмы.
- Табліца Inode: UNIX разглядае ўсе кампаненты як файлы, а табліца Inode з'яўляецца сховішчам для ўсіх даных, звязаных з файламі.
24. Чаму bash з'яўляецца слаба тыпізаванай мовай?
З-за адсутнасці патрабаванняў да дэкларацыі тыпу дадзеных пры дэкларацыі зменных Bash з'яўляецца мовай са слабай тыпізацыяй. Тып зменнай вызначаецца яе бягучым значэннем і разглядаецца як радок у Bash.
Каманда declare можа выкарыстоўвацца для вызначэння зменных Bash.
Аднак магчымасці для вызначэння тыпаў даных абмежаваныя і не ахопліваюць усе тыпы даных. Напрыклад, каманду declare нельга выкарыстоўваць з тыпам даных float.
25. Колькі часу мае зменная ў сцэнарыі абалонкі?
Пераменная ў скрыпце абалонкі мае час жыцця толькі да завяршэння выканання.
26. Назавіце каманду замены рэха.
Каманда tput з'яўляецца альтэрнатывай рэха. Мы можам выкарыстоўваць гэтую каманду, каб кантраляваць, як вывад адлюстроўваецца. Акрамя таго, незалежна ад памеру экрана, скрыпты абалонкі могуць выконваць такія дзеянні, як падкрэсліванне і цэнтраванне тэксту.
27. Дайце вызначэнне IFS
IFS расшыфроўваецца як Internal Field Separator. Гэта сістэмная зменная са значэннем па змаўчанні прабел, табуляцыя, за якой ідзе новы радок. IFS паказвае, дзе адно поле або слова заканчваецца ў радку і пачынаецца іншае.
28. Ці можна запускаць шматлікія скрыпты ў абалонцы?
Так, многія скрыпты могуць быць выкананы ў абалонцы. Вы можаце выклікаць адзін сцэнар з іншага, запусціўшы некалькі сцэнарыяў. Каб зрабіць гэта, вы павінны пазначыць імя скрыпту, які вы хочаце выклікаць.
29. Якія рэжымы ёсць у рэдактараў vi?
- Камандны рэжым: гэта рэжым, у якім вы пачынаеце.
- Рэжым рэдагавання: гэтая опцыя дазваляе выконваць наступныя праўкі.
- У гэтым рэжыме вы ўзаемадзейнічаеце з vi і даяце яму інструкцыі для апрацоўкі.
30. Якая розніца паміж $! і $$?
$! Адлюстроўвае ідэнтыфікатар працэсу, які нядаўна перайшоў у фонавы рэжым.
$$ вяртае ідэнтыфікатар працэсу, які зараз выконваецца.
31. Што азначае $#?
$# звычайна змяшчае колькасць аргументаў, хоць гэта можа адрознівацца для функцый. Прасцей кажучы, ён выкарыстоўваўся для запісу колькасці параметраў каманднага радка, перададзеных у сцэнар абалонкі.
32. Назавіце каманду, якая выкарыстоўваецца для стварэння рэзервовай копіі.
Каманда tar выкарыстоўваецца для стварэння рэзервовай копіі. Tar - гэта абрэвіятура ад стужкавага архіва, і яна выкарыстоўваецца для стварэння рэзервовых копій, якія выкарыстоўваюць tar, gzip і bzip. Гэтая каманда можа захоўваць і аднаўляць файлы з і на стужку.
Як правіла, файлы і каталогі сціскаюцца ў tar-файлы, якія з'яўляюцца архіўнымі файламі. Па гэтай прычыне гэта адна з найбольш часта выкарыстоўваюцца інструкцый. Акрамя таго, архіў можна проста перанесці з аднаго сервера на іншы.
33. Калі недарэчна выкарыстоўваць Shell Scripting?
Мы не павінны выкарыстоўваць Shell Scripting, калі праца сапраўды складаная, напрыклад, стварэнне цэлай сістэмы апрацоўкі заработнай платы.
Мы не павінны выкарыстоўваць Shell Scripting, калі праца патрабуе высокай прадукцыйнасці.
Мы не павінны выкарыстоўваць Shell Scripting, калі праект патрабуе некалькіх праграмных рашэнняў.
34. Як вы збіраецеся падключыцца да сервера базы дадзеных з Linux?
Мы можам выкарыстоўваць утыліту isql, якая ўваходзіць у драйвер адкрытага кліента, наступным чынам:
35. Што такое два камандных файла crontab?
cron.allow вызначае, якім карыстальнікам павінна быць дазволена выкарыстоўваць каманду crontab.
cron.deny, які вызначае, ці трэба забараняць карыстальнікам выкарыстоўваць каманду crontab.
36. Якія тры розныя сродкі абароны UNIX для файла або даных?
- Ён забяспечвае бяспеку на ўзроўні файла, даючы права на чытанне, запіс і выкананне файлаў.
- Ён прапануе карыстальнікам унікальны ідэнтыфікатар карыстальніка і пароль для аўтэнтыфікацыі, каб незнаёмыя або неаўтарызаваныя асобы не маглі атрымаць да яго доступ.
- Ён забяспечвае бяспеку шыфраванне файлаў. Такі падыход дазваляе закадзіраваць файл у нечытэльны фармат. Нават калі файл адкрыты, яго змесціва немагчыма прачытаць, пакуль ён не будзе расшыфраваны.
37. Коратка растлумачце каманду sed на прыкладзе.
sed - гэта абрэвіятура ад stream editor. Ён выкарыстоўваецца для рэдагавання файла без выкарыстання рэдактара. Ён выкарыстоўваецца для змены дадзенага патоку, напрыклад, файла або канвеера.
38. Якая мэта інструментаў, якія пастаўляюцца з адкрытым кліенцкім драйверам, у сценарыях абалонкі?
Сістэма падключаецца да сервера базы дадзеных толькі з дапамогай інструментаў. Карыстальнікі павінны выканаць шэраг важных і неабходных дзеянняў для праграмавання.
Для стварэння сцэнарыяў патрабуецца больш дадзеных і інфармацыі, і не заўсёды практычна захоўваць іх у адным месцы. Карыстальнікі, якія выкарыстоўваюць гэты падыход, павінны гарантаваць выхад без памылак.
49. Назавіце каманду, якую трэба выкарыстоўваць для вызначэння працягласці сістэмы.
Выкарыстоўваючы каманду Uptime, вы можаце вызначыць, як доўга працавала ваша сістэма. Таксама даступныя колькасць карыстальнікаў з актыўнымі сесіямі і тыповая загрузка сістэмы на працягу 1, 5 і 15 хвілін.
Вы таксама можаце адфільтраваць інфармацыю, якая прадстаўлена ўсю адначасова, у адпаведнасці з зробленым вамі выбарам.
40. Зрабіце скрыпт для дадання шматлікіх значэнняў.
41. Стварыце прыклад функцыі.
заключэнне
Вы можаце зразумець, што абалонка - гэта перш за ўсё інтэрфейс паміж аперацыйнай сістэмай і карыстальнікам, які перакладае ўведзеныя карыстальнікам інструкцыі ў аперацыйную сістэму або ядро з дапамогай гэтых пытанняў інтэрв'ю па сцэнарыях абалонкі.
Гэтая канцэпцыя часта мае вырашальнае значэнне ў працэсе падрыхтоўкі да інтэрв'ю Інжынеры DevOps і тэстары аўтаматызацыі. Сцэнарыі Shell дазваляюць ствараць сцэнарыі рознага ўзроўню складанасці. Сцэнарыі абалонкі таксама можна выкарыстоўваць для аўтаматызацыі розных перыядычных працэсаў.
паглядзець Серыя інтэрв'ю Хашдорка за дапамогу ў падрыхтоўцы да сумоўя.
Пакінуць каментар