Привет, Bash!

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В этом практическом занятии (лабораторной работе) вы создадите простой сценарий оболочки (shell script), который выводит классическое сообщение "Hello, World!". Вы научитесь основам программирования в оболочке Bash, которая широко используется в операционных системах типа Unix, таких как Linux. Это практическое занятие предназначено для начинающих, поэтому не беспокойтесь, если вы новичок в программировании или использовании командной строки.

Это Guided Lab, который предоставляет пошаговые инструкции, чтобы помочь вам учиться и практиковаться. Внимательно следуйте инструкциям, чтобы выполнить каждый шаг и получить практический опыт. Исторические данные показывают, что это лабораторная работа уровня средний с процентом завершения 77%. Он получил 100% положительных отзывов от учащихся.

Введение в WebIDE (VS Code)

В этом курсе по программированию на Shell мы будем использовать WebIDE, основанный на Visual Studio Code (VS Code). Эта интегрированная среда разработки предоставляет удобный способ редактирования скриптов и доступа к терминалу в одном месте.

Важно отметить, что хотя по умолчанию в WebIDE используется оболочка Zsh, в этом практическом занятии мы будем писать скрипты на Bash. Bash (Bourne Again SHell) - это самая распространенная и широко используемая оболочка в системах типа Unix. Zsh (Z Shell) - это расширенная версия Bash с некоторыми улучшениями и функциями. Для целей этого практического занятия различия не повлияют на нашу работу, так как наши скрипты явно будут использовать Bash через строку shebang (#!/bin/bash).

Доступ к WebIDE

При запуске практического занятия вы увидите интерфейс WebIDE в браузере. Он состоит из нескольких ключевых частей:

  1. Обозреватель файлов (левая боковая панель): показывает структуру каталогов и файлы.
  2. Редактор (основная область): здесь вы будете писать и редактировать свои скрипты.
  3. Терминал (нижняя панель): здесь вы будете запускать команды и выполнять скрипты.

Открытие терминала

Чтобы открыть терминал в WebIDE:

  1. Нажмите на "Terminal" в верхнем меню.
  2. Выберите "New Terminal" из выпадающего списка.

Внизу WebIDE откроется новая панель терминала. Вы увидите приглашение для ввода команды, похожее на следующее:

labex:project/ $

Это означает, что вы вошли в систему как пользователь labex, и текущий каталог - ~/project (что является сокращением для /home/labex/project).

Использование терминала

Пример интерфейса терминала WebIDE

Вы можете использовать этот терминал так же, как обычный терминал в системе Linux. Например, чтобы посмотреть содержимое текущего каталога, вы можете ввести:

ls

И нажать Enter. Это выведет список всех файлов и каталогов в текущем расположении.

Создание файла шелл-скрипта

Теперь создадим новый файл для нашего шелл-скрипта. Для этого воспользуемся командой touch в терминале. Команда touch используется для создания пустых файлов или обновления времени доступа и модификации существующих файлов.

Введите следующую команду в терминале и нажмите Enter:

touch hello.sh

Эта команда создает пустой файл с именем hello.sh в текущем каталоге. Расширение .sh обычно используется для шелл-скриптов, но это не обязательно.

Пример команды touch в терминале

После выполнения этой команды вы не увидите никакого вывода. В системах типа Unix отсутствие вывода обычно означает, что команда была выполнена успешно.

В качестве альтернативы вы можете создать файл с помощью интерфейса WebIDE:

  1. В проводнике файлов щелкните правой кнопкой мыши в каталоге /home/labex/project.
  2. Выберите "New File" из контекстного меню.
  3. Введите имя файла hello.sh и нажмите Enter.

Это создаст новый файл с именем hello.sh и откроет его в редакторе.

Редактирование шелл-скрипта

Теперь, когда мы создали файл, добавим в него некоторое содержимое. Для этого воспользуемся встроенным редактором WebIDE.

Если файл еще не открыт в редакторе:

  1. В проводнике файлов дважды щелкните по hello.sh, чтобы открыть его.

В редакторе введите следующие две строки именно так, как показано:

#!/bin/bash
echo 'Hello, World!'

Разберем, что означают эти строки:

  1. #!/bin/bash - Это называется строкой "shebang". Она сообщает системе, какой интерпретатор должен быть использован для запуска этого скрипта. В данном случае мы указываем оболочку Bash.
  2. echo 'Hello, World!' - Эта строка использует команду echo для вывода текста "Hello, World!" на экран.

После ввода этих строк сохраните файл, нажав Ctrl + S или выбрав в верхнем меню "File > Save".

Сделать скрипт исполняемым

Перед тем как запустить наш скрипт, мы должны сделать его исполняемым. В системах типа Unix файлы имеют права доступа, которые контролируют, кто может читать, записывать или выполнять их. По умолчанию новые файлы не являются исполняемыми.

Для того чтобы сделать наш скрипт исполняемым, мы используем команду chmod (что означает "change mode" - изменить режим). Введите следующую команду в терминале и нажмите Enter:

chmod +x hello.sh

Вот что делает эта команда:

  • chmod - это команда для изменения прав доступа к файлу.
  • +x означает "добавить право на выполнение".
  • hello.sh - это имя нашего файла.

Если команда выполнится успешно, вы не увидите никакого вывода.

Выполнение скрипта

Теперь, когда наш скрипт стал исполняемым, мы можем запустить его. Чтобы запустить скрипт в текущем каталоге, перед именем скрипта нужно использовать ./. Это ./ сообщает системе искать скрипт в текущем каталоге.

Введите следующую команду в терминале и нажмите Enter:

./hello.sh

Если все было сделано правильно, вы должны увидеть следующий вывод:

Hello, World!
Вывод терминала при выполнении скрипта

Поздравляем! Вы только что запустили свой первый шелл-скрипт.

Просмотр содержимого скрипта

В заключение давайте посмотрим на содержимое нашего скрипта, чтобы убедиться, что все сделано правильно. Для этого можно использовать команду cat, которая выводит содержимое файла в терминал.

Введите следующую команду в терминал и нажмите Enter:

cat hello.sh

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

#!/bin/bash
echo 'Hello, World!'

Это хорошая привычка при работе со скриптами – всегда проверяйте свое выполнение!

Итоги

В этом практическом занятии вы успешно создали и запустили простой шелл-скрипт на Bash. Вы научились:

  1. Пользоваться WebIDE и работать с его интегрированным терминалом
  2. Создавать новый скрипт с помощью команды touch или интерфейса WebIDE
  3. Редактировать файл с использованием встроенного редактора WebIDE
  4. Понять назначение строки shebang в шелл-скриптах
  5. Использовать команду echo для вывода текста
  6. Дать файлу права на выполнение с помощью команды chmod
  7. Запускать шелл-скрипт из командной строки
  8. Просматривать содержимое файла с помощью команды cat

Эти базовые навыки являются основой для более сложных задач по написанию шелл-скриптов и автоматизации в системах типа Unix. По мере дальнейшего обучения вы обнаружите, насколько мощным и гибким инструментом является написание шелл-скриптов для управления системами и автоматизации задач.

Помните, что практика – ключ к успеху в программировании. Попробуйте изменить скрипт так, чтобы он выводил другие сообщения, или создайте новые скрипты для выполнения других простых задач. Не бойтесь экспериментировать – именно так вы учитесь!