Завантажте PDF
1: Що таке оболонка?
Оболонка - це інтерфейс між користувачем і ядром. Хоча ядро може бути лише одне; система може мати багато оболонок, що працюють одночасно. Отже, кожного разу, коли користувач вводить команду через клавіатуру, оболонка спілкується з ядром для її виконання, а потім відображає вихідні дані для користувача.
2: Які різні типи часто використовуваних оболонок у типовій системі Linux?
csh, ksh, bash, Bourne. Найпоширенішою і вдосконаленою оболонкою, що використовується сьогодні, є "Bash".
3: Що є еквівалентом ярлика файлу, який ми маємо вікно в системі Linux?
Ярлики створюються за допомогою "посилань" на Linux. Існує два типи посилань, які можна використовувати, а саме "м'яке посилання" та "жорстке посилання".
4: У чому різниця між м’якими та твердими посиланнями?
М'які посилання є посиланням на ім'я файлу і можуть також знаходитись у різних файлових системах; однак тверді посилання є посиланням на inode файлу і повинні знаходитись у тому ж файлі, що і файл. Видалення оригінального файлу робить м’яке посилання неактивним (непрацююче посилання), але не впливає на жорстке посилання (тверде посилання все одно матиме доступ до копії файлу)
5: Як ви будете передавати та отримувати доступ до аргументів до сценарію в Linux?
Аргументи можна передавати як:
scriptName "Arg1" "Arg2"
…. «Argn» і доступ до нього можна отримати в скрипті як $ 1, $ 2… $ n6: Яке значення $ #?
$ # показує кількість аргументів, переданих сценарію.
7: Яка різниця між $ * та $ @?
$ @ розглядає кожен цитований аргумент як окремий аргумент, але $ * буде розглядати весь набір позиційних параметрів як один рядок.
8: Використовуйте команду sed, щоб замінити вміст файлу (емулювати команду 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- го рядка, не використовуючи команду хвоста та голови.
sed -n '10p' file113: У моїй оболонці bash я хочу, щоб мій запит був у форматі '$ "Present working directory": "hostname"> і завантажував файл, що містить список визначених користувачем функцій, як тільки я ввійду в систему, як ви зможете автоматизувати це ?
У оболонці bash ми можемо створити файл ".profile", який автоматично запускається, як тільки я ввійду в систему і напишу в нього наступний синтаксис.
export PS1='$ `pwd`:`hostname`>' .File1Тут File1 - це файл, що містить визначені користувачем функції та "." викликає цей файл у поточній оболонці.
14: Поясніть про біт дозволу "s" у файлі?
Біт "s" називається бітом "встановити ідентифікатор користувача" (SUID).
Біт "s" у файлі призводить до того, що процес має привілеї власника файлу під час екземпляра програми.
Наприклад, виконання команди "passwd" для зміни поточного пароля призводить до того, що користувач записує свій новий пароль у тіньовий файл, хоча його власником є "root".
15: Я хочу створити каталог, щоб кожен із групи міг створити файл і отримати доступ до файлу будь-якої людини в ньому, але ніхто не повинен мати змоги видалити файл, відмінний від створеного ним самим.
Ми можемо створити каталог, що надає доступ для читання та виконання всім учасникам групи та встановлюючи його липкий біт "t" наступним чином:
mkdir direc1chmod g+wx direc1chmod +t direc116: Як можна дізнатися, як довго система працює?
Ми можемо знайти це за допомогою команди "uptime".
17: Як будь-який користувач може дізнатись всю інформацію про конкретного користувача, наприклад, його оболонку за замовчуванням, ім’я у реальному житті, каталог за замовчуванням, коли і як довго він використовує систему?
палець "loginName"
… Де loginName - це ім’я для входу в системукористувач, інформація якого очікується.
18: Яка різниця між $$ і $ !?
$$ дає ідентифікатор процесу поточного процесу, тоді як $! Показує ідентифікатор процесу, який нещодавно пішов у фоновий режим.
19: Що таке зомбі-процеси?
Це процеси, які загинули, але статус виходу яких досі не визначається батьківським процесом. Ці процеси, навіть якщо вони не функціональні, все ще мають запис ідентифікатора процесу в таблиці процесів.
20: Як ви скопіюєте файл з однієї машини на іншу?
Ми можемо використовувати такі утиліти, як "ftp", "scp" або "rsync", щоб скопіювати файл з однієї машини на іншу.
Наприклад, використання ftp:
Ім'я хоста FTP
> покласти файл1
> до побачення
Над копіями файл file1 з локальної системи в систему призначення, назва хосту якої вказана.
21: Я хочу стежити за постійно оновлюваним файлом журналу, яку команду можна використовувати для найбільш ефективного досягнення цього?
Ми можемо використовувати ім'я файлу tail -f. Це призведе до того, що на std o / p відображатимуться лише останні 10 рядків за замовчуванням, які постійно відображають оновлену частину файлу.
22: Я хочу підключитися до віддаленого сервера і виконати деякі команди, як я можу цього досягти?
Для цього ми можемо використовувати ssh:
ssh ім'я користувача @ serverIP -p sshport
Приклад
ssh Ця електронна адреса захищена від спам-ботів. Вам потрібно увімкнути JavaScript, щоб переглянути його. -с 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 ServerName -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" файл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" у кожні 100- й рядок файлу?
sed '100i \ ABCDEF' файл1
40: Напишіть послідовність команд, щоб знайти всі файли, модифіковані менш ніж за 2 дні, та роздрукуйте кількість записів кожного.
знайти. -mtime -2 -exec wc -l {} \;
41: Як я можу встановити стандартний дозвіл rwx для всіх користувачів для кожного файлу, який створений у поточній оболонці?
Ми можемо використовувати:
umask 777Це встановить стандартний дозвіл rwx для кожного файлу, який створюється для кожного користувача.
42: Як ми можемо знайти назву процесу за його ідентифікатором?
Ми можемо використовувати "ps -p ProcessId"
43: Які чотири основні компоненти кожної файлової системи в Linux?
Bootblock, super block, inode block і Datablock знаходять основні компоненти кожної файлової системи в Linux.
44: Що таке завантажувальний блок?
Цей блок містить невелику програму під назвою "Master Boot record" (MBR), яка завантажує ядро під час завантаження системи.
45: Що таке суперблок?
Суперблок містить всю інформацію про файлову систему, як-от розмір файлової системи, розмір блоку, що використовується за кількістю вільних блоків даних, а також список безкоштовних індодів та блоків даних.
46: Що таке блок inode?
Цей блок містить inode для кожного файлу файлової системи разом з усіма атрибутами файлу, крім його імені.
47: Як я можу надіслати повідомлення зі стисненим файлом як вкладення?
zip file1.zip file1 | mailx -s "subject" Ідентифікатор електронної пошти одержувачів
Зміст електронної пошти
EOF
48: Як створити псевдоніми команд у оболонці?
alias Aliasname = "Команда, чий псевдонім потрібно створити".
49: Що таке поля дозволу "c" та "b" файлу?
Поля дозволів "c" та "b", як правило, пов'язані з файлом пристрою. Він визначає, є файл спеціальним символом чи блокує спеціальним файлом.
50: Яка користь від лінії шебанг?
Рядок Shebang у верхній частині кожного сценарію визначає розташування движка, який буде використовуватися для виконання сценарію.