Читать книгу: «Работа в командной строке linux»
Глава 1. Знакомство с командной строкой Linux
Введение
Командная строка (CLI — Command Line Interface) — мощный инструмент управления операционной системой Linux. В отличие от графического интерфейса (GUI), она позволяет выполнять задачи быстрее и эффективнее, особенно при работе на серверах или автоматизации рутинных операций.
В этой главе вы:* узнаете, что такое терминал и командная оболочка;* научитесь запускать терминал в графической среде Linux;* освоите базовые элементы синтаксиса команд;* получите первые навыки выполнения простых команд;* познакомитесь с системой получения справочной информации.
1.1. Терминал и командная оболочка
Терминал (или эмулятор терминала) — это программа, предоставляющая интерфейс для взаимодействия с командной оболочкой. В современных дистрибутивах Linux терминал запускается в графической среде.
Командная оболочка (shell) — программа, которая принимает команды от пользователя и исполняет их. Наиболее распространённая оболочка в Linux — Bash (Bourne Again SHell).
После запуска терминала вы увидите приглашение командной строки (prompt), которое обычно выглядит так:
username@hostname:~$
Где:* username — ваше имя пользователя;* hostname — имя компьютера;* ~ — символ домашней директории (/home/username);* $ — маркер готовности к вводу команды. Если вы вошли как суперпользователь (root), вместо $ будет #.
1.2. Запуск терминала
Способы открыть терминал зависят от используемого графического окружения:
1. Горячие клавиши: во многих дистрибутивах комбинация Ctrl+Alt+T запускает терминал.
2. Меню приложений: найдите пункт «Терминал», «Terminal», «Konsole» или «XTerm».
3. Контекстное меню: в файловом менеджере (например, Nautilus) кликните правой кнопкой мыши в любой папке и выберите «Открыть в терминале».
4. Поиск: используйте строку поиска в меню приложений, введя «terminal».
1.3. Синтаксис команд
Общая форма любой команды:
команда [опции] [аргументы]
• Команда — действие, которое нужно выполнить (например, ls, cd, pwd).
• Опции (флаги) — изменяют поведение команды, обычно начинаются с дефиса (-) или двойного дефиса (--). Например, -l для подробного вывода, --help для справки.
• Аргументы — объекты, над которыми выполняется действие (файлы, каталоги и т. д.).
Пример:
ls -l /home/user/Documents
• ls — команда (вывести список файлов);
• -l — опция (подробный формат);
• /home/user/Documents — аргумент (путь к каталогу).
1.4. Первые команды
Выполните следующие команды, чтобы познакомиться с основами:
1. pwd (Print Working Directory) — показать текущую директорию:
pwd
Вывод будет примерно таким: /home/username.
2. ls (List) — вывести список файлов и каталогов в текущей директории:
ls
Для подробного списка используйте опцию -l:
ls -l
Чтобы показать скрытые файлы (начинающиеся с точки), добавьте опцию -a:
ls -la
3. cd (Change Directory) — сменить текущую директорию:
cd /var/log
Вернуться в домашнюю директорию можно командой:
cd ~
Или просто:
cd
Перейти на уровень выше:
cd ..
4. whoami — вывести имя текущего пользователя:
whoami
5. date — показать текущую дату и время:
date
6. cal — вывести календарь на текущий месяц:
cal
1.5. Получение справки
Если вы не знаете, как использовать команду, воспользуйтесь встроенными средствами помощи:
1. --help — большинство команд поддерживают эту опцию:
ls --help
2. man (manual) — просмотр подробной справочной страницы:
man ls
Внутри man используйте клавиши:* ↑/↓ — прокрутка по строкам;* PgUp/PgDn — прокрутка по страницам;* / — поиск (введите шаблон и нажмите Enter);* q — выход из справки.
3. info — альтернативная система документации (более структурированная):
info ls
1.6. Практические упражнения
1. Запустите терминал.
2. Выполните команду pwd. Запишите, какой путь отображается.
3. Выполните ls -la. Найдите в выводе скрытые файлы (они начинаются с точки).
4. Перейдите в каталог /etc командой cd /etc.
5. Проверьте, что вы действительно в /etc, выполнив pwd.
6. Выведите список файлов в /etc с подробной информацией (ls -l). Обратите внимание на права доступа и владельцев.
7. Вернитесь в домашнюю директорию командой cd.
8. Откройте справку по команде date (date --help или man date). Найдите опцию для вывода даты в формате «год-месяц-день». Попробуйте её использовать.
Заключение
Вы познакомились с основами работы в командной строке Linux: научились запускать терминал, выполнять простые команды, ориентироваться в файловой системе и получать справочную информацию. Эти навыки станут фундаментом для дальнейшего изучения более сложных тем, таких как работа с файлами, процессы, скрипты и автоматизация.
В следующей главе мы углубимся в навигацию по файловой системе и управление файлами и каталогами.
Глава 2. Навигация по файловой системе и управление файлами
Введение
В Linux вся файловая система организована в виде единого дерева с корневым каталогом /. Понимание структуры файловой системы и умение перемещаться по ней — основа эффективной работы в командной строке.
В этой главе вы:* изучите структуру файловой системы Linux;* освоите абсолютные и относительные пути;* научитесь перемещаться между каталогами;* получите навыки просмотра содержимого каталогов;* познакомитесь с основными операциями по управлению файлами и каталогами.
2.1. Структура файловой системы Linux
Файловая система Linux имеет иерархическую структуру с корнем / (root). Основные каталоги:
• /bin — базовые исполняемые файлы (команды);
• /etc — конфигурационные файлы системы;
• /home — домашние каталоги пользователей;
• /var — переменные данные (логи, кэши);
• /tmp — временные файлы;
• /usr — пользовательские приложения и данные;
• /opt — дополнительные приложения.
Важно: в Linux нет дисков с буквами (как в Windows). Все устройства монтируются в дерево каталогов.
2.2. Абсолютные и относительные пути
Абсолютный путь начинается с корневого каталога / и указывает полное местоположение объекта:
/home/user/Documents/report.txt
Относительный путь задаётся относительно текущего каталога:* . — текущий каталог;* .. — родительский каталог (на уровень выше);* ~/ — домашний каталог пользователя.
Примеры:* Если вы в /home/user, то Documents/report.txt — относительный путь к файлу.* Абсолютный путь к тому же файлу: /home/user/Documents/report.txt.
2.3. Навигация по каталогам
Основные команды навигации:
1. pwd (Print Working Directory) — показать текущий каталог:
pwd
# Вывод: /home/user
2. cd (Change Directory) — сменить каталог:
cd /var/log # Переход в /var/log
cd Documents # Переход в подкаталог Documents текущего каталога
cd .. # Переход на уровень выше
cd ~ # Возвращение в домашний каталог
cd # Аналогично cd ~
cd - # Возврат в предыдущий каталог
2.4. Просмотр содержимого каталогов
Команда ls (List) выводит список файлов и каталогов.
Основные опции:* -a — показать все файлы, включая скрытые (имена начинаются с .);* -l — подробный формат (права, владелец, размер, дата);* -h — размеры в удобном формате (KB, MB, GB);* -t — сортировка по времени изменения;* -r — обратный порядок сортировки;* -F — добавить символы к именам (например, / для каталогов).
Примеры использования:
ls # Простой список файлов
ls -a # Список с скрытыми файлами
ls -l # Подробный список
ls -lh # Подробный список с удобными размерами
ls -la # Полный список (включая скрытые)
ls -lt # Сортировка по дате изменения
2.5. Управление файлами и каталогами
1. Создание каталогов (mkdir):
mkdir new_folder # Создание одного каталога
mkdir -p projects/2024/january # Создание вложенных каталогов
2. Создание файлов (touch):
touch report.txt # Создание пустого файла
touch file1.txt file2.txt # Создание нескольких файлов
3. Копирование (cp):
cp report.txt backup/ # Копирование в каталог backup
cp report.txt new_report.txt # Копирование с новым именем
cp -r folder/ backup/ # Рекурсивное копирование каталога
4. Перемещение и переименование (mv):
mv report.txt documents/ # Перемещение в каталог documents
mv report.txt final_report.txt # Переименование
5. Удаление (rm):
rm temp.txt # Удаление файла
rm -i *.tmp # Удаление с подтверждением
rm -r old_folder/ # Рекурсивное удаление каталога
Внимание: команда rm удаляет файлы безвозвратно. Используйте опцию -i для подтверждения.
2.6. Работа со скрытыми файлами и ссылками
Скрытые файлы начинаются с точки (.) и обычно содержат настройки программ (например, .bashrc, .ssh/).
Ссылки:* Символьная ссылка (ln -s) — аналог ярлыка в Windows:
ln -s /home/user/documents/report.txt link_to_report
• Жёсткая ссылка (ln) — альтернативное имя для файла (указывает на тот же inode).
2.7. Практические упражнения
1. Перейдите в каталог /tmp.
2. Создайте каталог test_nav командой mkdir.
3. Внутри test_nav создайте три файла: file1.txt, file2.txt, config.cfg.
4. Создайте подкаталог subfolder и скопируйте в него file1.txt.
5. Переименуйте file2.txt в data.txt.
6. Выведите подробный список файлов в test_nav, включая скрытые.
7. Создайте символическую ссылку link_to_config на config.cfg.
8. Проверьте содержимое ссылки командой ls -l.
9. Удалите subfolder и все его содержимое.
10. Вернитесь в домашний каталог командой cd.
Заключение
Вы освоили основы навигации по файловой системе Linux и базовые операции с файлами и каталогами. Теперь вы можете:* ориентироваться в структуре каталогов;* перемещаться между директориями;* просматривать содержимое папок;* создавать, копировать, перемещать и удалять файлы.
В следующей главе мы рассмотрим работу с содержимым файлов: просмотр, редактирование и поиск информации.
Глава 3. Работа с содержимым файлов: просмотр, редактирование и поиск
Введение
В Linux большинство настроек системы и приложений хранятся в текстовых файлах. Умение просматривать, редактировать и искать информацию в них — ключевой навык для работы в командной строке.
В этой главе вы:* изучите команды для просмотра файлов разного размера;* освоите базовые текстовые редакторы в терминале;* научитесь искать информацию в файлах и каталогах;* познакомитесь с фильтрацией и обработкой текстовой информации;* выполните практические задания для закрепления навыков.
3.1. Просмотр содержимого файлов
1. cat (concatenate) — выводит содержимое файла целиком. Подходит для небольших файлов.
Примеры:
cat /etc/hosts # Просмотр файла hosts
cat file1.txt file2.txt # Вывод нескольких файлов подряд
cat -n script.sh # Вывод с нумерацией строк
2. tac — аналогична cat, но выводит строки в обратном порядке.
tac logfile.txt
3. head — показывает первые строки файла (по умолчанию — 10).
head /var/log/syslog # Первые 10 строк лога
head -n 5 config.cfg # Первые 5 строк файла
head -c 100 data.txt # Первые 100 байт файла
4. tail — показывает последние строки файла.
tail /var/log/auth.log # Последние 10 строк
tail -n 20 error.log # Последние 20 строк
tail -f /var/log/syslog # Мониторинг в реальном времени (новые строки добавляются автоматически)
5. less — интерактивный просмотр больших файлов с прокруткой.
less /var/log/dmesg
Управление в less:* ↑/↓ — по строкам;* PgUp/PgDn — по страницам;* / + слово — поиск;* n — следующий результат поиска;* q — выход.
6. more — упрощённая версия less с ограниченными возможностями.
more long_document.txt
Начислим +6
Покупайте книги и получайте бонусы в Литрес, Читай-городе и Буквоеде.
Участвовать в бонусной программе
