1: что такое оболочка?
Shell — это интерфейс между пользователем и ядром. Хотя может быть только одно ядро; система может иметь много работающих одновременно оболочек. Таким образом, всякий раз, когда пользователь вводит команду через клавиатуру, оболочка связывается с ядром для ее выполнения, а затем отображает вывод для пользователя.
2: Каковы различные типы часто используемых оболочек в типичной системе Linux?
чш, кш, баш, борн. Наиболее распространенная и продвинутая оболочка, используемая сегодня, это «Bash».
3: Что эквивалентно ярлыку файла, который у нас есть в системе Linux?
Ярлыки создаются с помощью «ссылок» в Linux. Существует два типа ссылок, которые можно использовать, а именно: «мягкая ссылка» и «жесткая ссылка».
4: В чем разница между мягкими и жесткими ссылками?
Программные ссылки — это ссылки на имя файла, которые также могут находиться в разных файловых системах; однако жесткие ссылки — это ссылки на индекс файла и должны быть в том же файловом элементе, что и файл. Удаление исходного файла делает мягкую ссылку неактивной (неработающая ссылка), но не влияет на жесткую ссылку (жесткая ссылка все равно будет обращаться к копии файла)
5: Как вы будете передавать и получать доступ к аргументам скрипта в Linux?
Аргументы могут быть переданы как:
scriptName «Arg1» «Arg2″…. «Argn» и может быть доступен внутри скрипта как $ 1, $ 2 .. $ n
6: Каково значение $ #?
$ # показывает количество аргументов, переданных скрипту.
7: Какая разница между $ * и $ @?
$ @ рассматривает каждый аргумент в кавычках как отдельный аргумент, но $ * будет рассматривать весь набор позиционных параметров как одну строку.
8. Используйте команду sed для замены содержимого файла (команда emulate tac)
Например:
if cat fille ABCD EFGH
Тогда O / P должен быть
EFGH
ABCD
sed '1! G; h;$!d' file1
Здесь команда G добавляет к шаблону пространство,
Команда h копирует буфер шаблонов для хранения буфера
и команда d удаляет текущее пространство шаблона.
9: Для данного файла заменить все вхождения слова «ABC» на «DEF» от 5- й строки до конца только в тех строках, которые содержат слово «MNO»
sed –n '5,$p' file1|sed '/MNO/s/ABC/DEF/'
10: Для данного файла напишите последовательность команд, чтобы найти количество каждого слова.
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"
«(обратная косая черта) 011» является восьмеричным эквивалентом «символа табуляции» и
«(обратная косая черта) 012» является восьмеричным эквивалентом символа новой строки.
11: Как вы найдете 99- ю строку файла, используя только команду tail и head?
хвост +99 файл1 | голова -1
12: Вывести 10- ю строку без использования команды tail и head.
sed –n '10p' file1
13: В моей оболочке bash я хочу, чтобы мое приглашение имело формат ‘$ «Представить рабочий каталог»: «имя хоста»>, и как только я войду в систему, загрузите файл, содержащий список пользовательских функций, как вы будете это автоматизировать? ?
В оболочке bash мы можем создать файл «.profile», который автоматически вызывается, как только я вхожу в систему и записываю в него следующий синтаксис.
export PS1='$ `pwd`:`hostname`>' .File1
Здесь File1 — это файл, содержащий пользовательские функции и «.» вызывает этот файл в текущей оболочке.
14: Объяснить о бите разрешения «s» в файле?
Бит «s» называется битом «установить идентификатор пользователя» (SUID).
Бит «s» в файле заставляет процесс иметь привилегии владельца файла во время экземпляра программы.
Например, выполнение команды «passwd» для изменения текущего пароля приводит к тому, что пользователь записывает свой новый пароль в теневой файл, даже если у него есть «root» в качестве владельца.
15: Я хочу создать каталог так, чтобы любой в группе мог создать файл и получить доступ к файлу любого человека, но ни один из них не мог удалить файл, отличный от созданного им самим.
Мы можем создать каталог, предоставляющий доступ на чтение и выполнение каждому в группе и установив его бит «t» следующим образом:
mkdir direc1 chmod g+wx direc1 chmod +t direc1
16: Как узнать, как долго работает система?
Мы можем найти это с помощью команды «uptime».
17: Как любой пользователь может узнать всю информацию о конкретном пользователе, такую как его оболочка по умолчанию, реальное имя, каталог по умолчанию, когда и как долго он использует систему?
finger «loginName»… где loginName — это имя пользователя
пользователь, информация которого ожидается.
18: Какая разница между $$ и $ !?
$$ дает идентификатор процесса, выполняемого в данный момент, тогда как $! Показывает идентификатор процесса, который недавно перешел в фоновый режим.
19: что такое зомби-процессы?
Это процессы, которые умерли, но чей статус выхода все еще не выбран родительским процессом. Эти процессы, даже если они не функционируют, все еще имеют свою запись идентификатора процесса в таблице процессов.
20: Как вы будете копировать файл с одного компьютера на другой?
Мы можем использовать такие утилиты, как «ftp», «scp» или «rsync», чтобы скопировать файл с одного компьютера на другой.
Например, используя ftp:
Имя хоста FTP
> положить файл1
> До свидания
Выше копий файл file1 из локальной системы в целевую систему, имя хоста которой указано.
21: я хочу контролировать постоянно обновляемый файл журнала, какую команду можно использовать для наиболее эффективного достижения этой цели?
Мы можем использовать tail –f filename. Это приведет к тому, что только последние 10 строк по умолчанию будут отображаться на стандартном вводе / выводе, который постоянно отображает часть обновления файла.
22: я хочу подключиться к удаленному серверу и выполнить некоторые команды, как мне этого добиться?
Мы можем использовать ssh для этого:
ssh username @ serverIP -p sshport
пример
ssh [email protected] -p 22
После выполнения вышеуказанной команды вам будет предложено ввести пароль.
23: у меня есть 2 файла, и я хочу напечатать записи, которые являются общими для обоих.
Мы можем использовать команду «comm» следующим образом:
comm -12 file1 file2 … 12 будет подавлять содержимое, которое
уникальный для 1- го и 2- го файла соответственно.
24: Напишите скрипт для печати первых 10 элементов серии Фибоначчи.
#!/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: Как вы будете подключаться к серверу баз данных из Linux?
Мы можем использовать утилиту isql, которая поставляется с открытым клиентским драйвером следующим образом:
isql –S имя_сервера –U имя пользователя –P пароль
26: Каковы 3 стандартных потока в Linux?
0 — Стандартный вход 1 — Стандартный выход 2 — Стандартная ошибка
27: я хочу прочитать все входные данные команды из файла1, перенаправить весь вывод в файл2 и ошибку в файл 3, как я могу этого добиться?
команда <файл1 1> файл2 2> файл3
28: Что будет с моим текущим процессом, когда я выполню команду, используя exec?
«exec» накладывает вновь разветвленный процесс на текущий процесс; поэтому, когда я выполняю команду, используя exec, команда выполняется в текущей оболочке без создания каких-либо новых процессов.
Например, выполнение «exec ls» в командной строке выполнит ls, а после выхода из ls процесс завершится
29: Как вы будете эмулировать wc –l с помощью awk?
awk ‘END {print NR} fileName’
30: По заданному файлу найдите количество строк, содержащих слово «ABC».
grep –c «ABC» file1
31: В чем разница между grep и egrep?
egrep — это расширенный grep, который поддерживает дополнительные функции grep, такие как «+» (1 или более вхождений предыдущего символа), «?» (0 или 1 вхождение предыдущего символа) и «|» (альтернативное соответствие)
32: Как вы будете печатать логин всех пользователей в системе?
В файле / etc / shadow перечислены все пользователи.
awk –F ':' '{print $1}' /etc/shadow|uniq -u
33: Как установить массив в Linux?
Синтаксис в ksh:
Set –A arrayname= (element1 element2 ….. element) In bash A=(element1 element2 element3 …. elementn)
34: Запишите синтаксис цикла for
Синтаксис:
for iterator in (elements) do execute commands done
35: Как вы найдете общее дисковое пространство, используемое конкретным пользователем?
du -s / home / user1 …. где user1 — это пользователь, для которого нужно найти общее дисковое пространство.
36: Написать синтаксис для условных выражений if в Linux?
Синтаксис
If condition is successful then execute commands else execute commands fi
37: Каково значение $?
Команда $? дает статус выхода последней команды, которая была выполнена.
38: Как мы удаляем все пустые строки в файле?
sed '^ [(backslash)011(backslash)040]*$/d' file1
где (обратная косая черта) 011 является восьмеричным эквивалентом пространства и
(обратная косая черта) 040 — восьмеричный эквивалент табуляции
39: Как мне вставить строку «ABCDEF» в каждую сотую строку файла?
sed ‘100i \ ABCDEF’ file1
40: Напишите последовательность команд, чтобы найти все файлы, измененные менее чем за 2 дня, и напечатайте количество записей каждого.
найти . –Mtime -2 –exec wc –l {} \;
41: Как я могу установить разрешение rwx по умолчанию для всех пользователей в каждом файле, который создается в текущей оболочке?
Мы можем использовать:
umask 777
Это установит разрешение по умолчанию для каждого файла, который создается для каждого пользователя.
42: Как мы можем найти имя процесса по его идентификатору?
Мы можем использовать «ps –p ProcessId»
43: Каковы четыре основных компонента каждой файловой системы в Linux?
Загрузочный блок, суперблок, блок инода и блок данных являются основными компонентами каждой файловой системы в Linux.
44: Что такое загрузочный блок?
Этот блок содержит небольшую программу под названием «Основная загрузочная запись» (MBR), которая загружает ядро во время загрузки системы.
45: что такое супер блок?
Суперблок содержит всю информацию о файловой системе, такую как размер файловой системы, размер блока, используемый количеством свободных блоков данных, а также список свободных инодов и блоков данных.
46: Что такое блок инода?
Этот блок содержит индекс для каждого файла файловой системы вместе со всеми атрибутами файла, кроме его имени.
47: Как я могу отправить письмо со сжатым файлом в виде вложения?
zip file1.zip file1 | mailx –s «subject» Идентификатор электронной почты получателя
Содержание электронной почты
EOF
48: Как мы можем создать псевдонимы команд в оболочке?
alias Aliasname = «Команда, чей псевдоним должен быть создан».
49: Что такое поля разрешений «c» и «b» файла?
Поля разрешений «c» и «b» обычно связаны с файлом устройства. Он указывает, является ли файл файлом специального символа или файлом специального блока.
50: Какая польза от линии Шебанга?
Строка Шебанга в верхней части каждого сценария определяет местоположение механизма, который должен использоваться для выполнения сценария.