26 обязательных к прочтению вопросов и ответов на собеседовании по сценариям оболочки [для новичков и опытных]
Опубликовано: 2020-12-17Оболочка — это интерпретатор командной строки или полная среда, предназначенная для запуска команд, сценариев оболочки и программ. Как только вы введете команды в оболочку, она выполнит программу на основе вашего ввода.
По сути, он переводит входные команды и преобразует их в язык, совместимый с ядром. Сценарий оболочки относится к списку команд в программе, запускаемой оболочкой Unix. Сценарий включает комментарии, определяющие порядок выполнения команд.
Если введение заставляет вас хотеть узнать больше о сценариях оболочки, продолжайте прокручивать до конца — мы составили список вопросов и ответов для собеседования по сценариям оболочки, чтобы помочь вам начать процесс обучения! Если вы хотите узнать больше о науке о данных, ознакомьтесь с нашими курсами по науке о данных.
Оглавление
Вопросы и ответы на собеседовании по сценариям оболочки
- Каковы преимущества сценариев оболочки?
Наибольшие преимущества сценариев оболочки:
- Это позволяет вам создать пользовательскую операционную систему, которая наилучшим образом соответствует вашим требованиям.
- Он позволяет разрабатывать программные приложения на основе используемой вами платформы.
- Это экономит время, поскольку помогает автоматизировать задачи системного администрирования.
2. Что такое переменные оболочки?
Переменные оболочки составляют основную часть программы или сценария оболочки. Переменные позволяют Shell хранить информацию и управлять ею в программе Shell. Переменные оболочки обычно хранятся как строковые переменные.
3. Перечислите типы переменных, используемых в сценариях оболочки.
Обычно сценарий оболочки имеет два типа переменных:
- Системные переменные. Они создаются ОС (Linux) и обозначаются заглавными буквами. Вы можете просмотреть их с помощью команды Set.
- Пользовательские переменные — они создаются и определяются пользователями системы. Вы можете просмотреть значения переменных с помощью команды Echo.
- Как сделать переменную неизменяемой?
Вы можете сделать переменную неизменяемой, используя только чтение. Допустим, вы хотите, чтобы значение переменной 'a' оставалось равным пяти и сохраняло его постоянным, поэтому вы используете readonly следующим образом:
$ а = 5
$ только для чтения
- Назовите различные виды ракушек.
Существует четыре основных типа оболочек, а именно:
- Борн Шелл (ш)
- C-оболочка (csh)
- Корн Шелл (кш)
- Оболочка Bourne Again (bash)
- Объясните «Позиционные параметры».
Позиционные параметры — это переменные, определенные оболочкой. Они используются для передачи информации в программу путем указания аргументов в командной строке.
- Сколько оболочек и ядер доступно в среде UNIX?
Обычно среда UNIX имеет только одно ядро. Однако доступно несколько оболочек.
- Нужен ли вам отдельный компилятор для выполнения программы Shell?
Нет, вам не нужен отдельный компилятор для выполнения программы Shell. Поскольку сама оболочка представляет собой командную строку в программе оболочки и выполняет их.
- Как изменить права доступа к файлам в сценариях оболочки?
Вы можете изменить права доступа к файлам через umask.
- Что означает «.» (точку) в начале имени файла указать?
Имя файла, начинающееся с «.» является скрытым файлом. Обычно, когда вы пытаетесь вывести список файлов в оболочке, в ней перечислены все файлы, кроме скрытых. Однако скрытые файлы присутствуют в каталоге. Если вы хотите просмотреть скрытые файлы, вы должны запустить команду Is с флагом «-a».
- Как создать ярлык в Linux?
Вы можете создавать ярлыки в Linux по двум ссылкам:
Жесткая ссылка — эти ссылки связаны с индексным узлом файла. Они всегда присутствуют в той же файловой системе, что и файл. Даже если вы удалите исходный файл, жесткая ссылка останется неизменной.
Мягкая ссылка — эти ссылки связаны с именем файла. Они могут находиться или не находиться в той же файловой системе, что и файл. Если вы удалите исходный файл, программная ссылка станет неактивной.
12. Назовите различные этапы процесса Linux.
Как правило, процесс Linux проходит через четыре фазы:
- Ожидание — на этом этапе процесс Linux должен ожидать получения необходимого ресурса.
- Запуск — на этом этапе процесс выполняется.
- Остановлено — после успешного выполнения процесс Linux останавливается.
- Зомби — на последнем этапе, хотя процесс больше не выполняется, он остается активным в таблице процессов.
- Есть ли альтернативная команда для «эха»?
Да, tput — это альтернатива команде echo. Команда tput позволяет вам управлять тем, как выходные данные будут отображаться на экране.
- Сколько блоков содержит файловая система?
Файловая система состоит из четырех блоков:
- Суперблок — этот блок предоставляет информацию о состоянии файловой системы, такую как размер блока, размер группы блоков, информацию об использовании, пустые/заполненные блоки и их соответствующее количество, размер и расположение таблиц инодов и т. д.
- Bootblock — этот блок содержит программу начальной загрузки, которая выполняется, когда пользователь загружает хост-компьютер.
- Блок данных — этот блок включает в себя содержимое файла файловой системы.
- Таблица индексных дескрипторов — UNIX рассматривает все элементы как файлы, и вся информация, относящаяся к файлам, хранится в таблице индексных дескрипторов.
Обязательно к прочтению: вопросы на собеседовании по Python
- Назовите три режима работы редактора vi.
Три режима работы:
- Командный режим — этот режим обрабатывает и интерпретирует любую клавишу, нажатую пользователем, как команды редактора.
- Режим вставки — этот режим можно использовать для вставки нового текста, редактирования существующего текста и т. д.
- Экс-командный режим — пользователь может вводить все команды в командной строке.
- Определите «Инструкции по управлению». Сколько типов управляющих инструкций доступно в командной оболочке?
Управляющие инструкции — это команды, которые позволяют указать, как должны выполняться различные инструкции в сценарии. Таким образом, их основная цель — определить поток управления в программе Shell.
Оболочка имеет четыре типа управляющих инструкций:
- Инструкция управления последовательностью обеспечивает выполнение инструкций в том же порядке, в котором они находятся в программе.
- Инструкция управления выбором/принятием решения, которая позволяет компьютеру определить, какая инструкция должна быть выполнена следующей.
- Инструкция управления повторением/циклом, позволяющая компьютеру повторно выполнять группу операторов.
- Инструкция «кейс-контроль» используется, когда вам нужно выбрать из ряда альтернатив.
- Дайте определение «ИФС».
IFS относится к внутреннему разделителю полей. Это системная переменная, значением по умолчанию которой является пробел, табуляция и новая строка. IFS обозначает, где поле или слово заканчивается в строке и где начинается другое.
- Определите «Метасимволы».
Оболочка состоит из метасимволов, которые являются специальными символами в поле данных или программе, которая предлагает информацию о других символах. Например, команда «ls s*» в командной оболочке выводит список всех файлов, начинающихся с символа «s».
- Различайте $* и $@.
В то время как $* обрабатывает полную группу позиционных параметров как одну строку, $@ обрабатывает каждый аргумент в кавычках как отдельный аргумент.
Читайте также: Зарплата разработчиков Python в Индии
21. Напишите синтаксис цикла while в Shell Scripting.
В сценариях оболочки цикл while используется, когда вы хотите несколько раз повторить его блок команд. Синтаксис цикла while:
пока [условие проверки]
делать
команды…
Готово
- Чем отличаются команды break и continue?
Команда break используется для выхода из выполняемого цикла. Вы можете использовать команду break для выхода из любой команды цикла, включая циклы until и while. С другой стороны, команда continue используется для выхода из текущей итерации цикла, не выходя из всего цикла.
23. Почему мы используем строку Shebang в сценариях оболочки?
Строка Shebang расположена в верхней части сценария/программы Shell. Он информирует пользователя о расположении движка, выполняющего скрипт.

Вот пример линии Shebang:
#!/бин/ш
цент $ 1
- Можете ли вы выполнить несколько сценариев в оболочке?
Да, в Shell можно выполнять несколько сценариев. Выполнение нескольких скриптов позволяет вызывать один скрипт из другого. Для этого вы должны указать имя сценария, который будет вызываться, когда вы хотите его вызвать.
- Какую команду следует использовать, чтобы узнать, как долго работает система?
Вам нужно использовать команду uptime, чтобы узнать, как долго работает система. Вот пример команды uptime:
u/user1/Shell_Scripts_2018> время безотказной работы
- Какую команду следует использовать для проверки использования диска?
Вы можете использовать следующие три команды для проверки использования диска:
- df — используется для проверки свободного места на диске.
- du — используется для проверки использования диска каталогом.
- dfspace — проверяет свободное место на диске в мегабайтах (МБ).
27. Что вы подразумеваете под Crontab?
Crontab — это сокращение от таблицы cron, где Cron — это планировщик заданий, который выполняет задачи. Crontab — это список команд, которые вы хотите запускать по расписанию, а также команда, которую вы хотите использовать для управления этим списком.
28. Когда не следует использовать сценарии оболочки?
Мы не должны использовать сценарии оболочки в следующих случаях:
- Если задача очень сложная, например, написание полного решения для расчета заработной платы, нам не следует использовать сценарии оболочки.
- Если работа требует высокого уровня производительности, мы не должны использовать сценарии оболочки.
- Если для работы требуется несколько программных решений, мы не должны использовать сценарии оболочки.
29. Как вы сравниваете строки в сценарии оболочки?
Мы используем команду test для сравнения текстовых строк. Он сравнивает текстовые строки, сравнивая каждый символ, присутствующий в каждой строке.
Читайте: Вопросы для собеседования с Data Engineer
30. Что вы подразумеваете под файловой системой?
Файловая система — это набор файлов вместе с информацией, относящейся к этим файлам. Он контролирует, как данные извлекаются и хранятся. Без файловых систем данные, хранящиеся в хранилище, представляли бы собой лишь большой массив данных, в котором невозможно было бы определить, где заканчивается один фрагмент данных и начинается другой.
31. Можете ли вы отличить одинарные кавычки от двойных?
да. Мы используем одинарные кавычки, когда не хотим выполнять оценку переменных по значениям. С другой стороны, мы используем двойные кавычки, когда хотим выполнить оценку переменных по значениям.
32. Что вы подразумеваете под сценариями GUI?
Мы используем графический интерфейс для управления компьютером и его приложениями. С помощью сценариев GUI мы можем работать с различными приложениями, в зависимости от операционной системы.
33. Что вы знаете о Super Block в сценариях Shell?
Super Block — это программа, в которой есть запись определенных файловых систем. Он содержит характеристики, включая размер блока, заполненные и пустые блоки с их соответствующими счетчиками, расположение и размер таблиц инодов, информацию об использовании, карту дисковых блоков и т. д.
34. Какое значение имеет линия Шебанг?
Строка Shebang остается вверху сценария. Он дает информацию о местоположении, где находится движок, выполняющий скрипт.
35. Предоставьте некоторые из самых популярных команд UNIX.
Вот некоторые из самых популярных команд UNIX:
- cd — команда cd изменяет каталог на домашний каталог пользователя при использовании как $ cd. Вы можете использовать его для изменения каталога для тестирования с помощью $ cd test.
- ls — команда ls выводит список файлов в текущем каталоге при использовании как $ ls. Вы можете использовать его для записи файлов в длинном формате, используя его как $ ls -lrt.
- rm — Команда rm удалит файл с именем fileA, если вы используете его как $ rm fileA.
- cat — эта команда будет отображать содержимое файла, когда вы используете его как имя файла $ cat.
- mv — команда mv может переименовывать или перемещать файлы. Например, команда $ mv fileA fileB переместит файлы с именами fileA и fileB.
- date – команда date показывает текущее время и дату.
- grep — команда grep может искать определенную информацию в файле. Например, команда $ grep Hello fileA будет искать строки, в которых присутствует слово «Hello».
- finger — команда finger показывает информацию о пользователе.
- ps — команда ps показывает процессы, запущенные в данный момент на вашем компьютере.
- man — команда man показывает интерактивную справку или руководство по указанной команде. Например, команда $ ms rm отобразит онлайн-руководство по команде rm.
- pwd — команда pwd показывает текущий рабочий каталог.
- wc — команда wc подсчитывает количество символов, слов и строк в файле.
- history — команда history показывает список всех команд, которые вы использовали в последнее время.
- gzip — команда gzip сжимает указанный файл. Например, команда $ gzip fileA сожмет файл A и превратит его в файл A.gz.
- logname — команда logname напечатает имя пользователя в журнале.
- head — команда head показывает первые строки, присутствующие в файле. Например, команда $head -15 fileA отобразит первые 15 строк файла A.
Дополнительные примечания. Это один из самых важных вопросов на собеседовании по написанию сценариев в Shell. Мы рекомендуем подготовить более подробный список команд UNIX, так как на собеседованиях задают множество вариантов этого вопроса.
Обязательно к прочтению: вопросы для собеседования по науке о данных
36. Чем C Shell лучше, чем Bourne Shell?
C Shell лучше, чем Bourne Shell по следующим причинам:
- C Shell позволяет использовать псевдонимы для команд. Это означает, что пользователь может дать любое имя команде. Это весьма полезно, когда пользователю приходится использовать длинную команду несколько раз. Вместо многократного ввода длинного имени команды пользователь может ввести назначенное имя. Это экономит много времени и энергии, делая процесс намного более эффективным.
- C Shell имеет функцию истории команд, где C Shell запоминает все ранее использовавшиеся команды. Вы можете использовать эту функцию, чтобы не вводить одну и ту же команду несколько раз. Это существенно повышает эффективность.
По двум вышеуказанным причинам использование C Shell гораздо выгоднее, чем Bourne Shell.
37. Что необходимо для написания сценариев оболочки?
Сценарии оболочки имеют много преимуществ, которые делают их важными. Он принимает данные от пользователей, записывает их в файлы и отображает на экране. Более того, он позволяет создавать собственные команды и автоматизировать простые повседневные задачи. Вы также можете использовать сценарии оболочки для автоматизации задач системного администрирования. Сценарии оболочки делают ваши процессы более эффективными, экономя много энергии и времени. В связи с этим он весьма необходим и широко используется.
Заключение
Мы надеемся, что эти 26 вопросов и ответов на собеседовании по сценариям оболочки помогут вам растопить лед в отношении сценариев оболочки и подготовиться к следующему собеседованию!
Если вам интересно узнать о науке о данных, ознакомьтесь с программой IIIT-B & upGrad Executive PG по науке о данных, которая создана для работающих профессионалов и предлагает более 10 тематических исследований и проектов, практические семинары, наставничество с отраслевыми экспертами, 1 -на-1 с отраслевыми наставниками, более 400 часов обучения и помощи в трудоустройстве в ведущих фирмах.
Что такое сценарии оболочки?
Написание сценариев оболочки — это процесс написания сценариев/кодов для автоматизации монотонных задач. Вместо того, чтобы вводить команды одну за другой n раз, вы можете создать сценарий для автоматизации серии инструкций, которые выполняются одна за другой. Существенными этапами написания сценариев оболочки являются написание сценария, обеспечение его доступности для оболочки и предоставление полномочий на выполнение оболочки. Сценарии оболочки написаны в тексте ASCII и включают текст ASCII. Они создаются с помощью текстового редактора, текстового процессора или графического пользовательского интерфейса (GUI). Содержимое сценария состоит из последовательности команд, написанных на языке, понятном оболочке. После завершения файл сохраняется с расширением и в месте, доступном для оболочки.
Каковы приложения сценариев оболочки?
Сценарии оболочки просты и эффективны. Он использует тот же синтаксис в сценарии, что и в командной строке оболочки, что устраняет любую двусмысленность. Сценарий оболочки удобен для повторяющихся действий, выполнение которых заняло бы слишком много времени при вводе по одной строке за раз. Пользователи могут использовать сценарии оболочки для различных целей, таких как автоматизация процесса компиляции кода, запуск программы или создание среды программирования, завершение пакетной обработки и управление файлами, а также подключение существующих программ, выполнение плановых резервных копий и систем мониторинга.
Является ли написание сценариев оболочки хорошей профессией?
Сценарии оболочки используются в различных областях, таких как автоматизация, программирование, администрирование системы, автоматизация приложений, установка пакетов, автоматизация проверки, резервное копирование и восстановление данных в системе и т. д. Таким образом, сценарии оболочки являются неотъемлемой частью ИТ-отдела каждой компании. . Кроме того, это полезно на протяжении всей карьеры человека в области ИТ. При средней зарплате 6 39 000 фунтов стерлингов в год написание сценариев Shell — это хорошая профессия с множеством перспектив для учеников. Большинство ИТ-специалистов используют его каждый день для небольших автоматизированных работ, поскольку это экономит много времени.
