Мы используем cookie-файлы
Для оптимизации работы нашего сайта мы используем cookie-файлы. Продолжая использовать сайт, Вы соглашаетесь с использованием cookie-файлов.
Вход
  • Русский
  • Українська
  • UAH
  • USD
  • RUB
  • EUR
  • +38(044) 392-74-33  Киев
  • +38(057) 728-39-00  Харьков
  • +38(056) 794-38-31  Днепр
  • +38(032) 229-58-93  Львов
  • +38(048) 738-57-70  Одесса
  • +38(093) 170-15-42  Life
  • +38(067) 400-88-44  Киевстар
  • +38(095) 630-90-82  Vodafone
  • +1(888)393-24-51  USA, Toll free
  • +44(131)507-01-14  Great Britain
  • +7(499) 348-28-61  Москва

Основы Bash-скриптов

Блог Хостинг Основы Bash-скриптов

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

Ниже мы разберем основы Bash-скриптинга и коснемся нескольких частных случаев программирования на нем.

Что такое оболочка Bash?

В сфере IT оболочка - это программное обеспечение, которое соединяет пользователя с компьютером. Оболочка позволяет  пользователю узнать о системе или файлах в ней или управлять системой. Оболочка обычно является частью операционной системы. Существует два типа оболочек.

Командно-ориентированная оболочка, например OS X терминал.

Оболочка с графическим интерфейсом пользователя, например, искатель для OS X или всем знакомая Windows.

Терминал представляет собой командно-ориентированную оболочку, потому что здесь мы вводим команды напрямую, а не нажимаем кнопки мыши или вводим информацию в поля. Командно-ориентированные оболочки также имеют множество разновидностей - оболочка Bourne, Bash, оболочка Z и так далее. Как стандарт на компьютерах Mac, терминал открывает оболочку Bash.

Как работают Bash-скрипты?

Любой сценарий Bash представляет собой простой текстовый файл, который содержит ряд команд для циклов и запросов. Они представляют собой смесь команд, которые мы обычно вводим в командной строке ouselves (например, ls или cp) и команды, которые мы могли бы вводить в командной строке, но которые там не предусмотрены.

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

Файл Bash может взаимодействовать с пользователем посредством запросов, например, для «принимайте переменные» или «принимайте решения» с помощью запроса «да» или «нет». Благодаря такому взаимодействию сценарии могут служить различным целям.

Все, что вы можете нормально запустить из командной строки, может быть помещено в скрипт, и оно будет делать то же самое. Принято считать, что файлы, являющиеся скриптами Bash, имеют расширение .sh (например, myscript.sh). Как вы знаете Linux - это система без расширений, поэтому для работы скрипта не обязательно иметь это расширение.

Выбор текстового редактора

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

Только те, кто хочет создать BASH-скрипт под Windows, должны дополнительно установить текстовый редактор, например «Notepad ++». Программы командной строки "Nano" и "Vim" также предлагают подсветку синтаксиса и практически всегда доступны в Linux.

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

Выберите имя скрипта и создайте файл

Прежде чем прописать имя файла, мы должны убедиться, что оно еще не используется. Мы делаем это с type.

Если имя программы еще не существует, type возвращает «bash: type: имя программы: не найдено». В противном случае указывается путь к существующему файлу.

Далее вы можете вводить стандартные команды. Например, создать отдельный каталог с помощью mkdir и измените его с помощью cd. Также мы используем touch, чтобы создать изначально пустой файл скрипта.

mkdir ~ / файлы сценариев

CD ~ / файлы сценариев

touch catalog.sh

Что означают stdin, stdout и stderr?

В Bash существует три различных типа ввода и вывода контента, называемые стандартными потоками данных. Краткая форма записи является обычной для стандарта. Это приводит к трем потокам данных stdin, stdout и stderr.

stdin - стандартный ввод

Данные могут быть считаны в программы с использованием стандартного ввода. Как правило, стандартный ввод подключен к клавиатуре. Программы получают пользовательский ввод через ручную запись команд.

stdout - стандартный вывод

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

stderr - стандартный вывод ошибок

Стандартный вывод ошибок - это второй выходной поток данных, который выводит сообщения об ошибках и состоянии. Обычно также на монитор. Стандартный вывод ошибок также может быть перенаправлен отдельно от стандартного вывода, чтобы сообщения об ошибках не смешивались с выходными данными.

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

  • перенаправить поток данных stdout в файл;
  • перенаправить поток данных stderr в файл;
  • перенаправить из stdout в поток stderr;
  • перенаправить из stderr в поток stdout;
  • перенаправить в файл с помощью stderr и stdout;
  • перенаправить с помощью stderr и stdout в поток данных stdout;
  • перенаправить с помощью stderr и stdout в поток данных stderr;

Два примера:

В следующем примере вывод программы - здесь ls - записывается в файл. В результате команда list записывает все файлы в текущем каталоге в файл myfile.txt.

$ ls > myfile.txt

В следующем примере поток данных из stderr программы - здесь grep - записывается в файл.

$ grep da * 2> grep-errors.txt

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


Заказывайте хостинг и выбирайте домен в компании «Хостинг Украина».

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

Любой тариф нашего хостинга подойдет для Wordpress. Вы можете выбрать именно тот пакет, который максимально соответствует потребностям вашего проекта: SSD хостинг, VPS на SSD, Cloud (облачный) хостинг, облачный VPS. Выделенный сервер или dedicated server. 

Мы разработали систему автоматического тестирование сайта, это даст Вам возможность проверить десятки показателей и настроек сайта и домена. Проверит правильность параметров конфигурационного файла WordPress, подключения к базе данных, настроек тем и модулей. Проверит правильность настройки параметра php_memory_limit.

Присоединяйтесь к «Хостинг Украина» и мы позаботимся о технической стороне вашего бизнеса.

 

Кликай и подписывайся!


Только зарегистрированные пользователи могут оставлять комментарии

212

209

264

Подпишитесь на рассылку

Будем присылать анонсы новых статей и полезные советы раз в неделю

Присоединяйтесь к нам в соцсетях