Введение
Добро пожаловать в основы команд Linux. В этом практическом занятии (лабораторной работе) вы познакомитесь с основными командами Linux, которые являются фундаментом системного администрирования и повседневной работы в Linux. Команды Linux - это мощные инструменты, которые позволяют пользователям эффективно выполнять различные задачи в операционной системе.
Если вы новичок в мире Linux, то понимание базовых команд является ключевым моментом для навигации по системе, управления файлами и выполнения административных задач. Эти команды служат основой для более сложных операций и скриптовых технологий, которые вы будете изучать по мере продвижения в освоении Linux.
В этом практическом занятии (лабораторной работе) вы научитесь использовать основные команды Linux, получать доступ к документации и понимать их различные параметры. Навыки, которые вы приобретете здесь, будут применимы к любой дистрибуции Linux и подготовят вас к более сложным операциям в Linux в будущем.
Базовые команды Linux
На этом этапе вы узнаете о некоторых из наиболее важных команд Linux, которые помогут вам ориентироваться в системе и взаимодействовать с ней.
Команда echo
Команда echo используется для вывода текста или переменных в терминале. Это простая, но полезная команда для отображения информации или тестирования других команд.
Создадим простой скрипт, который использует команду echo:
- Перейдите в директорию проекта (если вы еще не там):
cd ~/project
- Создайте файл с именем
hello.shс помощью командыecho:
echo 'echo "Hello, Linux World!"' > ~/project/hello.sh
- Сделайте скрипт исполняемым:
chmod +x ~/project/hello.sh
- Запустите свой скрипт:
bash ~/project/hello.sh
Вы должны увидеть следующий вывод:
Hello, Linux World!
Команда pwd
Команда pwd (Print Working Directory - вывести текущую рабочую директорию) отображает полный путь к текущей директории.
Попробуйте сейчас:
pwd
Вы должны увидеть вывод, похожий на следующий:
/home/labex/project
Это подтверждает, что вы находитесь в директории проекта в своей домашней директории.
Команда ls
Команда ls выводит список содержимого директории. Попробуем ее:
ls
В списке файлов текущей директории вы должны увидеть hello.sh.
Для получения более подробной информации вы можете использовать команду ls с опцией -l (длинный формат):
ls -l
Вывод будет содержать больше информации о каждом файле, включая права доступа, владельца, размер и дату изменения:
total 4
-rwxr-xr-x 1 labex labex 28 [date] hello.sh
Понимание документации Linux
Linux предоставляет обширную документацию через страницы руководства, обычно называемые "man-страницами". Эти страницы содержат подробную информацию о командах, их параметрах и способах их использования.
Команда man
Команда man отображает страницу руководства для указанной команды. Это чрезвычайно полезно, когда вам нужно понять, как работает команда или какие параметры доступны.
Познакомимся со страницей руководства для команды echo:
man echo
В терминале откроется страница руководства. Вы можете использовать следующие клавиши для навигации:
- Нажмите
SpaceилиPage Down, чтобы прокрутить вниз. - Нажмите
bилиPage Up, чтобы прокрутить вверх. - Нажмите
/, а затем введите поисковый запрос, чтобы найти определенную информацию. - Нажмите
n, чтобы перейти к следующему совпадению поиска. - Нажмите
q, чтобы выйти из страницы руководства и вернуться в терминал.
Пройдитесь по странице руководства, чтобы понять различные параметры, доступные для команды echo.
После того, как вы закончите знакомство, нажмите q, чтобы выйти из страницы руководства.
Использование параметров команд
Исходя из того, что вы узнали из страницы руководства, давайте попробуем использовать параметр -n с командой echo. Этот параметр предотвращает добавление символа новой строки в конце вывода.
- Создайте файл, чтобы документировать то, что вы узнали:
cd ~/project
- Создайте файл, в котором объясняется параметр
-n:
echo "The -n option for echo prevents adding a newline at the end of the output" > ~/project/echo-options.txt
- Продемонстрируем разницу между использованием команды
echoс параметром-nи без него:
## Without -n option
echo "First line"
echo "Second line"
## With -n option
echo -n "First line (no newline): "
echo "Second line"
Вы должны увидеть следующий вывод:
First line
Second line
First line (no newline): Second line
Обратите внимание, как во втором примере оба вывода отображаются на одной строке, потому что параметр -n предотвратил добавление символа новой строки.
- Просмотрите содержимое файла с документацией:
cat ~/project/echo-options.txt
Вы должны увидеть:
The -n option for echo prevents adding a newline at the end of the output
Работа с файлами и каталогами
На этом этапе вы узнаете основные команды для управления файлами и директориями в Linux.
Создание и навигация по директориям
Команда mkdir создает новые директории, а команда cd позволяет переходить между директориями.
- Создадим новую директорию для наших упражнений:
cd ~/project
mkdir linux_practice
- Перейдем в новую директорию:
cd linux_practice
- Убедимся, что вы находитесь в правильной директории:
pwd
Вы должны увидеть:
/home/labex/project/linux_practice
Создание и просмотр файлов
Теперь давайте поработаем с некоторыми файлами в этой директории.
- Создадим простой текстовый файл с использованием команды
echoи перенаправления вывода:
echo "Linux is a powerful operating system." > about_linux.txt
- Добавим еще одну строку в файл с использованием оператора перенаправления для добавления (
>>):
echo "It is open - source and widely used in servers and embedded systems." >> about_linux.txt
- Просмотрим содержимое файла с использованием команды
cat:
cat about_linux.txt
Вы должны увидеть:
Linux is a powerful operating system.
It is open - source and widely used in servers and embedded systems.
Копирование и перемещение файлов
Команда cp копирует файлы, а команда mv перемещает или переименовывает файлы.
- Сделаем копию нашего файла:
cp about_linux.txt linux_copy.txt
- Убедимся, что оба файла существуют:
ls
Вы должны увидеть:
about_linux.txt linux_copy.txt
- Теперь переименуем копию:
mv linux_copy.txt linux_benefits.txt
- Изменим содержимое переименованного файла:
echo "Benefits of Linux include security, stability, and flexibility." > linux_benefits.txt
- Убедимся в содержимом обоих файлов:
echo "Content of about_linux.txt:"
cat about_linux.txt
echo -e "\nContent of linux_benefits.txt:"
cat linux_benefits.txt
Вы должны увидеть:
Content of about_linux.txt:
Linux is a powerful operating system.
It is open - source and widely used in servers and embedded systems.
Content of linux_benefits.txt:
Benefits of Linux include security, stability, and flexibility.
- Вернемся в директорию проекта:
cd ~/project
Работа с командами обработки текста
Linux предоставляет мощные команды для обработки и манипулирования текстовыми файлами. На этом этапе вы узнаете о некоторых базовых командах обработки текста.
Команда grep
Команда grep ищет определенные шаблоны в файлах или выходных данных команд. Она очень полезна для поиска информации в больших файлах.
- Сначала создадим файл с несколькими строками для практики:
cd ~/project
echo -e "Apple\nBanana\nCherry\nDate\nEggplant\nFig\nGrape" > fruits.txt
- Используем
grepдля поиска определенного шаблона:
grep "Apple" fruits.txt
Вы должны увидеть:
Apple
- Вы также можете использовать
grepс параметром-iдля выполнения поиска без учета регистра:
grep -i "apple" fruits.txt
Это также выведет:
Apple
Команда wc
Команда wc (word count - подсчет слов) подсчитывает строки, слова и символы в файле.
- Подсчитаем элементы в нашем файле с фруктами:
wc fruits.txt
Вы должны увидеть вывод, похожий на следующий:
7 7 42 fruits.txt
Это означает, что файл содержит 7 строк, 7 слов и 42 символа.
- Вы также можете использовать конкретные параметры, чтобы подсчитать только то, что вас интересует:
## Count lines only
wc -l fruits.txt
## Count words only
wc -w fruits.txt
## Count characters only
wc -c fruits.txt
Команда sort
Команда sort упорядочивает строки текста в алфавитном или числовом порядке.
- Отсортируем наш файл с фруктами в алфавитном порядке:
sort fruits.txt
Вы должны увидеть:
Apple
Banana
Cherry
Date
Eggplant
Fig
Grape
- Чтобы отсортировать в обратном порядке, используйте параметр
-r:
sort -r fruits.txt
Вы должны увидеть:
Grape
Fig
Eggplant
Date
Cherry
Banana
Apple
- Создайте файл, в котором будет изложен краткий обзор того, что вы узнали о этих командах обработки текста:
echo "grep: Searches for patterns in files" > ~/project/text_commands.txt
echo "wc: Counts lines, words, and characters in files" >> ~/project/text_commands.txt
echo "sort: Arranges text lines in alphabetical or numerical order" >> ~/project/text_commands.txt
- Просмотрите ваш обзор:
cat ~/project/text_commands.txt
Вы должны увидеть:
grep: Searches for patterns in files
wc: Counts lines, words, and characters in files
sort: Arranges text lines in alphabetical or numerical order
Резюме
В этом практическом занятии вы изучили основы команд Linux, которые являются обязательными для всех, кто начинает свой путь с системами Linux. Вы практиковались в использовании базовых команд для взаимодействия с терминалом, навигации по файловой системе и обработки текстовых файлов.
Вот краткое резюме того, что вы узнали:
Базовые команды:
echo: Вывод текста в терминалpwd: Определение текущего местоположения директорииls: Вывод содержимого директории
Документация:
- Использование
man-страниц для изучения команд и их параметров - Понимание параметров команд, таких как
echo -n
- Использование
Операции с файлами и директориями:
mkdir: Создание директорийcd: Переход между директориями- Создание файлов с использованием
echoи перенаправления (>и>>) cat: Просмотр содержимого файловcp: Копирование файловmv: Перемещение и переименование файлов
Обработка текста:
grep: Поиск шаблонов в файлахwc: Подсчет строк, слов и символовsort: Упорядочивание текста в алфавитном или числовом порядке
Эти команды являются основой системного администрирования и повседневного использования Linux. По мере продвижения в изучении Linux вы узнаете, как эти базовые команды можно комбинировать и расширять для выполнения более сложных операций и автоматизации задач с помощью shell-скриптинга.
Помните, что практика - ключ к овладению командами Linux. Попытайтесь регулярно использовать эти команды в различных контекстах, чтобы закрепить свои знания и дальнейшим образом развить свои навыки.



