Bash-скрипты: функции

Содержание

Слайд 2

Bash-скрипты: функции

Оболочка bash предоставляет такую возможность, позволяя создавать функции. Функции bash —

Bash-скрипты: функции Оболочка bash предоставляет такую возможность, позволяя создавать функции. Функции bash
это именованные блоки кода, которые можно повторно использовать в скриптах.
Структура объявления функций:
functionName { } – функция без параметров;
functionName() { } – функция с параметрами.

Слайд 3

Напишем с вами скрипт, содержащий объявление функции и использующий её:

Напишем с вами скрипт, содержащий объявление функции и использующий её:

Слайд 5

Использование команды return

Команды return позволяет задавать возвращаемый функцией целочисленный код завершения. Есть

Использование команды return Команды return позволяет задавать возвращаемый функцией целочисленный код завершения.
два способа работы с тем, что является результатом вызова функции.
Первый способ:

Слайд 6

Второй способ заключается в записи данных, выводимых функцией, в переменную. Рассмотрим пример:

Второй способ заключается в записи данных, выводимых функцией, в переменную. Рассмотрим пример:

Слайд 7

Аргументы функций

Функции могут использовать стандартные позиционные параметры, в которые записывается то, что

Аргументы функций Функции могут использовать стандартные позиционные параметры, в которые записывается то,
передаётся им при вызове. Например, имя функции хранится в параметре $0, первый переданный ей аргумент — в $1, второй — в $2, и так далее.
Количество переданных функции аргументов можно узнать, обратившись к переменной $#.
Аргументы передают функции, записывая их после её имени: myfunc $val1 10 20

Слайд 8

Глобальные переменные

Глобальные переменные — это переменные, которые видны из любого места bash-скрипта.

Глобальные переменные Глобальные переменные — это переменные, которые видны из любого места
Если вы объявили глобальную переменную в основном коде скрипта, к такой переменной можно обратиться из функции.
Почти то же самое справедливо и для глобальных переменных, объявленных в функциях. Обращаться к ним можно и в основном коде скрипта после вызова функций.

Слайд 9

Локальные переменные

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

Локальные переменные Переменные, которые объявляют и используют внутри функции, могут быть объявлены
Для того, чтобы это сделать, используется ключевое слово local перед именем переменной:
local temp=$(( $temp + 5 ))
Если за пределами функции есть переменная с таким же именем, это на неё не повлияет. Ключевое слово local позволяет отделить переменные, используемые внутри функции, от остальных переменных.

Слайд 10

Bash-скрипты: Регулярные выражения

Регулярные выражения — это очень мощный инструмент для поиска текста

Bash-скрипты: Регулярные выражения Регулярные выражения — это очень мощный инструмент для поиска
по шаблону, обработки и изменения строк, который можно применять для решения множества задач.
Вот основные из них:
Проверка ввода текста;
Поиск и замена текста в файле;
Пакетное переименование файлов;
Проверка строки на соответствие шаблону.

Слайд 11

Bash-скрипты: Регулярные выражения

Регулярные выражения — это очень мощный инструмент для поиска
В

Bash-скрипты: Регулярные выражения Регулярные выражения — это очень мощный инструмент для поиска
регулярных выражениях могут использоваться два типа символов:
Обычные буквы;
Метасимволы.
Обычные символы — это буквы, цифры и знаки препинания, из которых состоят любые строки. Все тексты состоят из букв и вы можете использовать их в регулярных выражениях для поиска нужной позиции в тексте.
Метасимволы — это кое-что другое, именно они дают силу регулярным выражениям. С помощью метасимволов вы можете сделать намного больше чем поиск одного символа. Вы можете искать комбинации символов, использовать динамическое их количество и выбирать диапазоны.
Все спецсимволы можно разделить на два типа, это символы замены, которые заменяют собой обычные символы, или операторы, которые указывают сколько раз может повторяться символ. Синтаксис регулярного выражения будет выглядеть таким образом: