Скачать PDF
1: Что такое оболочка?
Оболочка - это интерфейс между пользователем и ядром. Хотя может быть только одно ядро; в системе может одновременно работать несколько командных интерпретаторов. Таким образом, всякий раз, когда пользователь вводит команду с клавиатуры, оболочка связывается с ядром, чтобы выполнить ее, а затем отобразить вывод пользователю.
2: Какие типы оболочек обычно используются в типичной системе Linux?
csh, ksh, bash, Bourne. Наиболее часто используемая и продвинутая оболочка, используемая сегодня, - это «Bash».
3: Что эквивалентно ярлыку файла, который у нас есть в окне в системе Linux?
Ярлыки создаются с помощью «ссылок» в Linux. Есть два типа ссылок, которые можно использовать, а именно «мягкая ссылка» и «жесткая ссылка».
4: В чем разница между программными и жесткими ссылками?
Программные ссылки - это ссылки на имя файла, которые также могут находиться в разных файловых системах; однако жесткие ссылки являются ссылкой на индексный дескриптор файла и должны находиться в той же файловой системе, что и файл. Удаление исходного файла делает программную ссылку неактивной (битая ссылка), но не влияет на жесткую ссылку (жесткая ссылка по-прежнему будет иметь доступ к копии файла)
5: Как вы будете передавать и получать доступ к аргументам сценария в Linux?
Аргументы могут быть переданы как:
scriptName "Arg1" "Arg2"
…. "Argn", и к нему можно получить доступ внутри скрипта как $ 1, $ 2… $ n6: Какое значение имеет $ #?
$ # показывает количество аргументов, переданных скрипту.
7: В чем разница между $ * и $ @?
$ @ обрабатывает каждый аргумент в кавычках как отдельные аргументы, но $ * будет рассматривать весь набор позиционных параметров как одну строку.
8: Используйте команду sed для замены содержимого файла (команда emulate tac)
Например:
if cat filleABCDEFGH
Тогда O / p должно быть
EFGHABCD
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""(обратная косая черта) 011" является восьмеричным эквивалентом "символа табуляции" и
"(обратная косая черта) 012" - восьмеричный эквивалент символа новой строки.
11: Как найти 99- ю строку файла, используя только команды tail и head?
хвост +99 файл1 | голова -1
12: Распечатать 10- ю строку без использования команды tail и head.
sed -n '10p' file113: В моей оболочке bash я хочу, чтобы мое приглашение было в формате '$ "Текущий рабочий каталог": "имя хоста"> и загружало файл, содержащий список пользовательских функций, как только я вхожу в систему, как вы это автоматизируете? ?
В оболочке bash мы можем создать файл ".profile", который автоматически вызывается, как только я вхожу в систему и записываю в него следующий синтаксис.
export PS1='$ `pwd`:`hostname`>' .File1Здесь File1 - это файл, содержащий пользовательские функции и "." вызывает этот файл в текущей оболочке.
14: Объясните о бите разрешения "s" в файле?
Бит «s» называется битом «установить идентификатор пользователя» (SUID).
Бит «s» в файле заставляет процесс иметь привилегии владельца файла во время экземпляра программы.
Например, выполнение команды «passwd» для изменения текущего пароля заставляет пользователя записывать свой новый пароль в теневой файл, даже если его владельцем является «root».
15: Я хочу создать каталог, чтобы любой член группы мог создать файл и получить доступ к файлу любого человека в нем, но никто не должен иметь возможность удалить файл, кроме созданного им самим.
Мы можем создать каталог, предоставляющий доступ на чтение и выполнение для всех в группе и установив его липкий бит «t» следующим образом:
mkdir direc1chmod g+wx direc1chmod +t direc116: Как узнать, как долго работает система?
Мы можем найти это с помощью команды «время безотказной работы».
17: Как любой пользователь может узнать всю информацию о конкретном пользователе, такую как его оболочка по умолчанию, реальное имя, каталог по умолчанию, когда и как долго он использует систему?
палец "loginName"
… Где loginName - имя пользователяпользователь, чья информация ожидается.
18: В чем разница между $$ и $ !?
$$ дает идентификатор процесса, выполняемого в данный момент, тогда как $! Показывает идентификатор процесса, который недавно перешел в фоновый режим.
19: Что такое зомби-процессы?
Это процессы, которые умерли, но статус завершения которых все еще не выбран родительским процессом. Эти процессы, даже если они не работают, по-прежнему имеют запись идентификатора процесса в таблице процессов.
20: Как вы скопируете файл с одной машины на другую?
Мы можем использовать такие утилиты, как «ftp», «scp» или «rsync», чтобы скопировать файл с одной машины на другую.
Например, используя ftp:
Имя хоста FTP
> положить file1
> пока
Выше копирует файл file1 из локальной системы в целевую систему, для которой указано имя хоста.
21: Я хочу отслеживать постоянно обновляемый файл журнала. Какую команду можно использовать для наиболее эффективного достижения этой цели?
Мы можем использовать tail -f filename. Это приведет к тому, что на std o / p будут отображаться только последние 10 строк по умолчанию, которые постоянно показывают обновляемую часть файла.
22: Я хочу подключиться к удаленному серверу и выполнить некоторые команды, как я могу этого добиться?
Для этого мы можем использовать ssh:
ssh имя пользователя @ serverIP -p sshport
Пример
ssh Этот адрес электронной почты защищен от спам-ботов. У вас должен быть включен JavaScript для просмотра. -p 22
После выполнения указанной выше команды вам будет предложено ввести пароль.
23: У меня есть 2 файла, и я хочу распечатать общие для них записи.
Мы можем использовать команду "comm" следующим образом:
comm -12 file1 file2… 12 подавит содержимое, которое
уникальна для 1- го и 2- го файлов соответственно.
24: Напишите сценарий для печати первых 10 элементов ряда Фибоначчи.
#!/bin/sha=1b=1echo $aecho $bfor I in 1 2 3 4 5 6 7 8doc=ab=$ab=$(($a+$c))echo $bdone25: Как вы подключитесь к серверу базы данных из 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} имя_файла'
30: Для данного файла найдите количество строк, содержащих слово «ABC».
grep -c "ABC" файл1
31: В чем разница между grep и egrep?
egrep - это расширенный grep, который поддерживает добавленные функции grep, такие как «+» (1 или более вхождений предыдущего символа), «?» (0 или 1 вхождение предыдущего символа) и «|» (альтернативное соответствие)
32: Как вы распечатаете логины всех пользователей в системе?
В файле / etc / shadow перечислены все пользователи.
awk -F ':' '{print $1}' /etc/shadow|uniq -u33: Как установить массив в Linux?
Синтаксис в ksh:
Set -A arrayname= (element1 element2… element)In bashA=(element1 element2 element3… . elementn)34: Запишите синтаксис цикла for
Синтаксис:
for iterator in (elements)doexecute commandsdone35: Как определить общее дисковое пространство, используемое конкретным пользователем?
du -s / home / user1…. где user1 - это пользователь, для которого необходимо найти общее дисковое пространство.
36: Написать синтаксис для условных выражений «если» в Linux?
Синтаксис
If condition is successfulthenexecute commandselseexecute commandsfi37: Какое значение имеет $?
Команда $? дает статус выхода последней выполненной команды.
38: Как удалить все пустые строки в файле?
sed '[(backslash)011(backslash)040]*$/d' file1где (обратная косая черта) 011 - восьмеричный эквивалент пробела и
(обратная косая черта) 040 - восьмеричный эквивалент табуляции
39: Как мне вставить строку «ABCDEF» в каждую сотую строку файла?
sed '100i \ ABCDEF' файл1
40: Напишите последовательность команд, чтобы найти все файлы, измененные менее чем за 2 дня, и распечатать количество записей для каждого.
найти . -mtime -2 -exec wc -l {} \;
41: Как я могу установить разрешение rwx по умолчанию для всех пользователей в каждом файле, который создается в текущей оболочке?
Мы можем использовать:
umask 777Это установит разрешение rwx по умолчанию для каждого файла, который создается для каждого пользователя.
42: Как мы можем найти имя процесса по его идентификатору?
Мы можем использовать "ps -p ProcessId"
43: Каковы четыре основных компонента каждой файловой системы в Linux?
Загрузочный блок, суперблок, блок inode и блок данных являются основными компонентами каждой файловой системы в Linux.
44: Что такое загрузочный блок?
Этот блок содержит небольшую программу под названием «Master Boot record» (MBR), которая загружает ядро во время загрузки системы.
45: Что такое суперблок?
Суперблок содержит всю информацию о файловой системе, такую как размер файловой системы, размер используемого блока, количество свободных блоков данных и список свободных индексных дескрипторов и блоков данных.
46: Что такое блок inode?
Этот блок содержит индексный дескриптор для каждого файла файловой системы вместе со всеми атрибутами файла, кроме его имени.
47: Как я могу отправить письмо со сжатым файлом в качестве вложения?
zip file1.zip file1 | mailx -s "тема" Идентификатор электронной почты получателя
Электронная почта
EOF
48: Как мы создаем псевдонимы команд в оболочке?
alias Aliasname = "Команда, псевдоним которой должен быть создан".
49: Что такое поля разрешений "c" и "b" файла?
Поля разрешений «c» и «b» обычно связаны с файлом устройства. Он определяет, является ли файл файлом специальных символов или файлом специального блока.
50: Какая польза от линии shebang?
Строка Shebang в верхней части каждого сценария определяет расположение движка, который будет использоваться для выполнения сценария.