Начало работы с Linux

LinuxBeginner
Практиковаться сейчас

Введение

Терминал — это текстовый способ взаимодействия с Linux. Вы вводите команду после приглашения оболочки, нажимаете Enter, а Linux выводит результат или изменяет что-либо в системе. Сначала приглашение может показаться непривычным, но каждое взаимодействие следует одной и той же простой схеме.

В этой первой лабораторной работе вы выполните безопасные команды, которые выводят текст, показывают дату, отображают календарь, вычисляют числа и создают текстовую графику. Вы также сохраните несколько результатов в /home/labex/project/first-commands, чтобы научиться отличать временный вывод терминала от информации, сохранённой в файле.

Выполните первую команду

Совет: Если вы впервые работаете в LabEx, рекомендуем начать с учебного курса по Linux.

На этом шаге вы научитесь распознавать приглашение терминала, выполнять команду и читать её вывод.

Мигающий курсор находится после приглашения оболочки. Приглашение сообщает, что оболочка готова принять команду; само приглашение вводить не нужно. Сначала перейдите в рабочий каталог, подготовленный для этой лабораторной работы:

cd /home/labex/project/first-commands

Введите команду в месте мигающего курсора на вкладке Terminal

cd означает «change directory» — «сменить каталог». Каталог — это название папки в Linux. В следующих лабораторных работах каталоги рассматриваются подробнее; пока эта команда просто задаёт единое место для всех сохранённых результатов.

Выполните pwd, что означает «print working directory» — «вывести текущий рабочий каталог»:

pwd

В выводе должен появиться каталог, в который вы только что перешли:

/home/labex/project/first-commands

Теперь используйте echo, чтобы попросить оболочку вывести текст:

echo "Hello, Linux"

Вы должны увидеть:

Hello, Linux

Кавычки объединяют слова в одно текстовое значение. Теперь сохраните приветствие в файл. Символ > называется перенаправлением вывода: оболочка создаёт файл, имя которого указано справа, и отправляет туда обычный вывод команды вместо отображения его на экране. Если файл уже существует, > заменяет его прежнее содержимое, поэтому перед использованием этого оператора с важными данными проверьте назначение:

echo "Hello, Linux" > greeting.txt

Эта команда ничего не выводит на экран, потому что результат был перенаправлен в greeting.txt.

Прочитайте сохранённый файл с помощью cat:

cat greeting.txt

Если вы снова видите Hello, Linux, значит текст теперь существует в greeting.txt, а не только отображается на экране терминала.

Просмотрите дату и календарь

На этом шаге вы запросите у Linux информацию о времени и увидите, что вывод команды может зависеть от окружения.

Выполните date без параметров:

date

Linux выведет текущий день недели, дату, время, часовой пояс и год. Точное значение меняется каждую секунду, поэтому ваш вывод будет отличаться от примеров, которые вы можете увидеть в других местах.

Команды часто принимают параметры, изменяющие их вывод. Формат date, начинающийся с +, позволяет выбрать нужные поля. %F означает формат даты ISO YYYY-MM-DD:

date +%F

Сохраните сегодняшнюю дату в формате ISO. Как и на предыдущем шаге, > перенаправляет вывод в файл и заменяет этот файл, если он уже существует:

date +%F > today.txt

Команда cal отображает текущий месяц в виде календаря:

cal

Расположение месяца и дней недели зависит от текущей даты и локали. Сохраните этот вывод:

cal > calendar.txt

Символ > отправляет вывод в файл, а не на экран. Отобразите сохранённый календарь, чтобы убедиться, что он записан:

cat calendar.txt

Позже вы подробно изучите перенаправление. Пока запомните: вывод терминала можно просмотреть сразу или сохранить для дальнейшего использования.

Выполните вычисления с помощью Expr

На этом шаге вы будете использовать expr для целочисленных вычислений и увидите, почему пробелы важны в командах оболочки.

Оболочка разделяет командную строку на слова по пробелам. expr ожидает, что первое число, оператор и второе число будут отдельными аргументами. Сложите два числа:

expr 5 + 3

Результат:

8

Попробуйте вычитание и деление:

expr 20 - 7
expr 24 / 6

Для умножения требуется дополнительный шаг. Оболочка воспринимает * как шаблон, соответствующий именам файлов, поэтому экранируйте этот символ обратной косой чертой, чтобы передать expr обычный оператор умножения:

expr 6 \* 7

Сохраните результат умножения в файл. Здесь используется то же перенаправление вывода, с которым вы работали ранее, поэтому терминал останется пустым, а calculation.txt получит значение 42:

expr 6 \* 7 > calculation.txt

Отобразите содержимое файла:

cat calculation.txt

Вы должны увидеть 42. Простая структура этого первого упражнения помогает сосредоточиться на устройстве команды: имени команды, разделённых пробелами аргументах и необязательном месте назначения вывода.

Превратите текст в ASCII-графику

На этом шаге вы воспользуетесь параметром команды, чтобы изменить форматирование текста в figlet.

figlet создаёт крупные буквы из обычных символов терминала. Запустите его с коротким словом:

figlet "LabEx"

Вывод занимает несколько строк. Это называется ASCII-графикой, потому что для её создания используются текстовые символы, а не пиксели изображения.

Многие параметры Linux начинаются с -. В figlet параметр -f выбирает шрифт, а slant — это имя шрифта. Попробуйте:

figlet -f slant "Linux"

Сохраните первый вариант оформления в файл:

figlet "LabEx" > labex-art.txt

Просмотрите начало сохранённой графики:

head labex-art.txt

По умолчанию head отображает первые десять строк. Вы должны увидеть тот же многострочный рисунок, который ранее появился в терминале.

Очистите переполненный терминал

На этом шаге вы очистите старый вывод и научитесь отличать очистку экрана от удаления файлов.

После выполнения нескольких команд терминал может стать перегруженным выводом. Выполните:

clear

clear убирает старый вывод терминала из области просмотра. Эта команда не удаляет команды, файлы или каталоги. В большинстве терминалов также поддерживается сочетание Ctrl+L, которое выполняет такую же визуальную очистку.

Убедитесь, что созданные ранее файлы по-прежнему существуют, выведя содержимое рабочего каталога:

ls

Вы по-прежнему должны увидеть greeting.txt, today.txt, calendar.txt, calculations.txt и labex-art.txt.

После очистки экрана создайте последний файл-маркер:

echo "Terminal ready" > terminal-ready.txt

Выведите маркер, чтобы проверить его:

cat terminal-ready.txt

Эта последняя команда закрепляет важную мысль: очистка экрана меняет только то, что вы видите сейчас, а файлы остаются сохранёнными на диске.

Итоги

Вы изучили основную схему работы с терминалом: ввести команду, нажать Enter и интерпретировать результат. Вы попрактиковались с pwd, echo, date, cal, expr, figlet и clear, использовали простые параметры и сохраняли вывод в файлы. Теперь вы готовы применить эти основы в небольшой задаче с терминалом, прежде чем переходить к более широкому изучению операций с файлами.