50 самых популярных вопросов на собеседовании по Unix & Ответы

Anonim

Скачать PDF

1) Что такое UNIX?

Это портативная операционная система, которая предназначена как для эффективных многозадачных, так и для многопользовательских функций. Его портативность позволяет ему работать на различных аппаратных платформах. Он был написан на C и позволяет пользователям выполнять обработку и управлять из командной оболочки.

2) Что такое фильтры?

Термин «фильтр» часто используется для обозначения любой программы, которая может принимать входные данные со стандартного входа, выполнять некоторые операции с этими входными данными и записывать результаты в стандартный выходной поток. Фильтр - это также любая программа, которую можно использовать между двумя другими программами в конвейере.

3) Какой типичный синтаксис используется при вводе команд в оболочке?

Типичный синтаксис команд в оболочке UNIX имеет следующий формат:

Команда [-аргумент] [-аргумент] [--аргумент] [файл]

4) Есть ли способ стереть все файлы в текущем каталоге, включая все его подкаталоги, используя только одну команду?

Да, это возможно. Для этого используйте "rm -r *". Команда rm предназначена для удаления файлов. Параметр -r удаляет каталоги и подкаталоги, включая файлы внутри. Звездочкой обозначены все записи.

5) В чем основное различие между устанавливаемыми параметрами -v и -x?

Параметр -v отображает каждую команду перед заменой аргументов и переменных; опция -x повторяет команды после того, как произошла подстановка.

6) Что такое ядро?

Ядро - это операционная система UNIX, основная программа, которая управляет ресурсами компьютера, распределяя их между разными пользователями и выполняя разные задачи. Однако ядро ​​не работает напрямую с пользователем. Вместо этого он запускает отдельную интерактивную программу, называемую оболочкой, для каждого пользователя, когда он входит в систему.

7) Что такое Shell?

Оболочка действует как интерфейс между пользователем и системой. В качестве интерпретатора команд оболочка принимает команды и настраивает их для выполнения.

8) Каковы ключевые особенности Korn Shell?

  • механизм истории со встроенным редактором, имитирующим emacs или vi
  • встроенная целочисленная арифметика
  • возможности манипулирования строками
  • псевдоним команды
  • массивы
  • контроль работы

9) Какие бывают распространенные снаряды и каковы их показатели?

  • sh - оболочка Борна
  • csh - C SHell
  • bash - Bourne Again Shell
  • tcsh - улучшенная оболочка C
  • zsh - Z SHell
  • ksh - Корн Шелл

10) Отличите многопользовательский режим от многозадачности.

Многопользовательский режим означает, что компьютером одновременно могут пользоваться несколько человек. Многозадачность означает, что даже один пользователь может заставить компьютер работать над более чем одной задачей или программой одновременно.

11) Что такое подстановка команд?

Подстановка команд - это один из шагов, выполняемых каждый раз, когда команды обрабатываются оболочкой. Оболочка выполняет только те команды, которые заключены в обратные кавычки. Затем это заменит стандартный вывод команды и отобразится в командной строке.

12) Что такое каталог?

Каждому файлу назначен каталог. Каталог - это особая форма файла, в которой хранится список всех файлов в нем.

13) Что такое inode?

Inode - это запись, созданная в разделе диска, отведенном под файловую систему. Inode содержит почти всю информацию о файле. Он включает в себя место на диске, с которого начинается файл, размер файла, время последнего использования файла при последнем изменении файла, различные разрешения на чтение, запись и выполнение, кому принадлежит файл и другую информацию. .

14) У вас есть файл с именем tonky в каталоге honky. Позже вы добавите новый материал в tonky. Какие изменения происходят в каталоге, индексном дескрипторе и файле?

Запись в каталоге не изменяется, поскольку имя и номер inode остаются неизменными. В файле inode обновляются размер файла, время последнего доступа и время последней модификации. В самом файле добавлен новый материал.

15) Описать файловые системы в UNIX

Понимание файловых систем в UNIX связано с пониманием того, как файлы и inodes хранятся в системе. Что происходит, так это то, что диск или его часть выделяется для хранения файлов и записей inode. Вся функциональная единица называется файловой системой.

16) Отличите относительный путь от абсолютного пути.

Относительный путь относится к пути относительно текущего пути. С другой стороны, абсолютный путь относится к точному пути, указанному в корневом каталоге.

17) Объясните важность каталогов в системе UNIX

Файлы в каталоге могут быть самим каталогом; это будет называться подкаталогом оригинала. Эта возможность позволяет разработать древовидную структуру каталогов и файлов, которая имеет решающее значение для поддержания организационной схемы.

18) Кратко опишите обязанности Shell

  • выполнение программы
  • подстановка переменных и имен файлов
  • Перенаправление ввода / вывода
  • подключение к трубопроводу
  • контроль окружающей среды
  • интерпретируемый язык программирования

19) Что такое переменные оболочки?

Переменные оболочки - это комбинация имени (идентификатора) и присвоенного значения, которое существует в оболочке. Эти переменные могут иметь значения по умолчанию или значения которых можно установить вручную с помощью соответствующей команды присваивания. Примеры переменных оболочки: PATH, TERM и HOME.

20) В чем разница между системным вызовом, библиотечной функцией и командой UNIX?

Системный вызов - это часть программирования ядра. Библиотечная функция - это программа, которая не является частью ядра, но доступна пользователям системы. Однако команды UNIX - это автономные программы; они могут включать в свое программирование как системные вызовы, так и библиотечные функции.

21) Что такое Bash Shell?

Это бесплатная оболочка, предназначенная для работы в системе UNIX. Будучи оболочкой по умолчанию для большинства систем на базе UNIX, она сочетает в себе функции, доступные как в C, так и в оболочке Korn.

22) Перечислите некоторые из наиболее часто используемых сетевых команд в UNIX.

  • telnet - используется для удаленного входа в систему
  • ping - эхо-запрос для проверки возможности подключения
  • su - команда переключения пользователей
  • ftp - протокол передачи файлов, используемый для копирования файлов
  • finger - команда сбора информации

23) Отличите команду cmp от команды diff.

Команда cmp используется в основном для побайтового сравнения двух файлов, после чего отображается первое обнаруженное несоответствие. С другой стороны, команда diff используется для обозначения изменений, которые необходимо внести, чтобы сделать два файла идентичными друг другу.

24) Какая польза от -l при выводе списка каталогов?

-l, который обычно используется в команде листинга, такой как ls, используется для отображения файлов в длинном формате, по одному файлу в строке. Длинный формат относится к дополнительной информации, связанной с файлом, такой как право собственности, разрешения, данные и размер файла.

25) Что такое трубопровод?

Конвейер, представленный вертикальной чертой «|», используется для объединения двух или более команд вместе. Выходные данные первой команды служат входными данными для следующей команды и так далее.

26) Что такое суперпользователь?

Суперпользователь - это пользователь особого типа, который имеет открытый доступ ко всем файлам и командам в системе. Обратите внимание, что логин суперпользователя обычно root и защищен так называемым паролем root.

27) Как вы определяете и устанавливаете путь в UNIX?

Каждый раз, когда вы вводите команду, переменная с именем PATH или path будет определять, в каком каталоге оболочка будет искать эту команду. В случаях, когда было возвращено сообщение об ошибке, причина может быть в том, что команда не была на вашем пути или сама команда не существует. Вы также можете указать путь вручную, используя команду "set path = [путь к каталогу]".

28) Можно ли увидеть информацию о процессе во время его выполнения?

Каждый процесс однозначно идентифицируется идентификатором процесса. Можно просмотреть подробную информацию и статус процесса с помощью команды ps.

29) Какое стандартное соглашение соблюдается при именовании файлов в UNIX?

Одним из важных правил при именовании файлов является недопустимость символов, имеющих особое значение, например * / & и%. Каталог, являющийся особым типом файла, следует тому же соглашению об именах, что и файлы. Используются буквы и цифры, а также такие символы, как подчеркивание и точки.

30) Почему не рекомендуется использовать root в качестве логина по умолчанию?

Учетная запись root очень важна и при неправильном использовании может легко привести к повреждению системы. Это потому, что меры безопасности, которые обычно применяются к учетным записям пользователей, не применимы к учетной записи root.

31) Какая польза от команды tee?

Команда tee выполняет две функции: первая - получает данные из стандартного ввода и отправляет их на стандартный вывод; во-вторых, он перенаправляет копию этих входных данных в указанный файл.

32) Отличите команду cat от команды more.

При использовании команды cat для отображения содержимого файла большие данные, которые не помещаются на экране, будут прокручиваться без остановки, что затрудняет просмотр. С другой стороны, в таких случаях более уместно использовать команду more, поскольку она будет отображать содержимое файла по одной экранной странице за раз.

33) Что такое парсинг?

Парсинг - это процесс разбиения командной строки на слова. Это стало возможным благодаря использованию разделителей и пробелов. Если в команде используются табуляции или несколько пробелов, они в конечном итоге заменяются одним пробелом.

34) Что такое пид?

Pid - это сокращение от Process ID. Он используется в первую очередь для идентификации каждого процесса, который выполняется в системе UNIX, независимо от того, работает ли он на переднем плане или работает в фоновом режиме. Каждый pid считается уникальным.

35) Как система узнает, где заканчивается одна команда и начинается другая?

Обычно символ новой строки, который генерируется клавишами ENTER или RETURN, действует как указатель. Однако точка с запятой и символы амперсанда также могут служить в качестве терминаторов команд.

37) Что такое интерпретация подстановочных знаков?

Когда командная строка содержит символы подстановки, такие как «*» или «?». Они заменяются оболочкой с отсортированным списком файлов, шаблон которых соответствует команде ввода. Подстановочные знаки используются для настройки списка файлов для обработки вместо того, чтобы указывать его по одному.

38) Что дает эта команда? $ кто | sort -logfile> новый файл

В этой команде выходные данные команды «who» становятся входными данными для команды «sort». В то же время "sort" открывает файл журнала, объединяет его с выводом команды "who" и помещает окончательный отсортированный вывод в файл newfile.

39) Как переключиться с любого типа пользователя на тип суперпользователя?

Чтобы переключиться с любого типа пользователя на суперпользователя, вы используете команду su. Однако вам будет предложено ввести правильный пароль суперпользователя, прежде чем вам будут предоставлены права полного доступа.

40) Каким будет эффект от изменения значения PATH на:.: / Usr / della / bin: / bin: / usr / bin

Это заставит оболочку искать в каталоге / usr / della / bin после просмотра текущего каталога и перед поиском в каталоге / bin при поиске командного файла.

41) Напишите команду, которая будет отображать файлы в текущем каталоге в цветном длинном формате.

Ответ: ls -l --color

42) Напишите команду, которая найдет все текстовые файлы в каталоге так, чтобы они не содержали слова «удивительно» в какой-либо форме (то есть она должна включать слова Amazing, AMAZING или aMAZINg).

Отвечать:

grep -vi amazing *.txt

43) Напишите команду, которая будет выводить отсортированное содержимое файла с именем IN.TXT и помещать вывод в другой файл с именем OUT.TXT, в то же время исключая повторяющиеся записи.

Отвечать:

sort IN.TXT | uniq > OUT.TXT

44) Напишите команду, которая позволит системе UNIX выключиться через 15 минут, после чего она выполнит перезагрузку.

Отвечать:

/sbin/shutdown -r +15

45) Какая команда изменит ваше приглашение на MYPROMPT?

Чтобы изменить приглашение, мы используем команду PS1, например:

PS1 = 'MYPROMPT:'

46) Что делает эта команда? корм для кошек 1> котенок

Ответ: перенаправляет вывод кошачьего корма в файл kitty; команда такая же, как: корм для кошек> котенок

47) Что не так с этим интерактивным сценарием оболочки?

echo Что это за месяц? read $ monthecho $ month - такой же хороший месяц, как и любой другой.

Ответ: Изначально знак вопроса должен быть экранирован (\?), Чтобы он не интерпретировался как метасимвол оболочки. Во-вторых, следует читать месяц, а не $ месяц.

48) Напишите сценарий оболочки, который запрашивает возраст пользователя, а затем повторяет его вместе с подходящим комментарием.

Отвечать:

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

49) Напишите сценарий, который распечатывает информацию о дате в следующем порядке: время, день недели, номер дня, месяц, год (пример вывода: 17:34:51 PDT, воскресенье, 12 февраля 2012 г.)

Отвечать:

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

50) Напишите сценарий, который будет выводить следующее:

Дай мне U!

U!

Дайте мне N!

N!

Дай мне "я"!

Я!

Поставьте мне крестик!

ИКС!

Ответ: для i в UNI Xdo

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