Bash
set -euo pipefail
!; -name "config.yml"
echo "Name is not empty"
</syntaxhighlight> !; Змінна
<syntaxhighlight lang="bash">
shellcheck script.sh
'''ssh''' застосовується для підключення до сервера.; Приклад:
як ілюстрація, вручну можна виконати:
database="erp_database"
!; Вираз
Команда з sudo має змогу змінити систему.; -d "$directory" ]; then
== Порівняння чисел ==
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
env
./hello.sh
count=15
fi
<syntaxhighlight lang="bash">
Перевірка файлів і каталогів
set -euo pipefail
echo "Database backup created"
== awk ==
if [ "$age" -ge 18 ]; then
bash install.sh
set -euo pipefail
git add .; Її треба виконувати тільки коли зрозуміло, що саме вона робить.'''
Клонування:
</syntaxhighlight> !; npm install </syntaxhighlight> }
</syntaxhighlight>
Пошук у файлі:
- Це коментар
</syntaxhighlight> </syntaxhighlight>
if check_file "config.yml"; then
echo "Hello from Bash script"
sudo apt update fi Більш переносимий варіант: </syntaxhighlight>
less install.sh
Процеси
echo "New line" >> hello.txt Bash є собою розвитком класичної оболонки sh і став однією з найпоширеніших shell-оболонок у світі Unix/Linux.; Пояснення
say_hello curl https://example.com/install.sh | bash say_hello() {
</syntaxhighlight>
Приклади:
Redirect
xargs створює команди з вхідних даних.; Оператор
chmod +x hello.sh
command -v bash
Головна ідея Bash
!; Значення
grep -n "error" app.log
composer install
Або:
echo "$name"
Приклад:
bash --version
sed
</syntaxhighlight> set -euo pipefail
!; Значення
cat app.log | grep "error"
echo "$filename"
echo "Config missing"
echo "Hello"
exit 1
grep "error" app.log
sed 's/old/new/g' file.txt pip install -r requirements.txt Розпакувати архів:!; Вивести рядки з 10 по 20: <syntaxhighlight lang="bash"> {| class="wikitable sortable" <syntaxhighlight lang="bash"> b=7 Правильно: <syntaxhighlight lang="bash"> command || echo "Command failed" Дізнатися шлях до Bash: <syntaxhighlight lang="bash"> <syntaxhighlight lang="bash"> Перевірити код останньої команди: mkdir build && cd build Команда <code>echo</code> виводить текст у консоль.; ЗначенняТипові помилки новачків
Приклад для Python:
Робота з файлами
</syntaxhighlight>
;</syntaxhighlight> Створити каталог:
Складність великих скриптів Bash погано підходить для великих програм Проблеми з quoting Пробіли й спецсимволи часто створюють помилки Слабка типізація Усе здебільшого є собою текстом Небезпечні команди Помилка має змогу видалити або змінити важливі файли Погана читабельність складної логіки Для складних задач краще Python, Go або інша мова Різниця між sh і bash Bash-скрипт має змогу не працювати в sh Приклад перевірки місця на диску:
-H "Content-Type: application/json" \ </syntaxhighlight>
|- | '''Не ставити лапки навколо змінних''' | Пробіли в іменах файлів можуть зламати скрипт |- | '''Писати <code>name = value</code>''' | У Bash так не оголошуються змінні |- | '''Плутати <code>></code> і <code>>></code>''' | <code>></code> перезаписує файл, <code>>></code> додає |- | '''Запускати <code>rm -r</code> без перевірки''' | Можна видалити важливі файли |- | '''Використовувати Bash-синтаксис із <code>#!/bin/sh</code>''' | sh має змогу не підтримувати Bash-можливості |- | '''Ігнорувати exit code''' | Скрипт має змогу продовжитись після помилки |- | '''Зберігати паролі в скрипті''' | Це небезпечно |} <syntaxhighlight lang="bash"> <syntaxhighlight lang="bash">Рекомендований шлях навчання Bash
автоматизація процесів команд Дуже добре Linux server administration Дуже добре Backup-скрипти Добре CI/CD steps Добре Логи й текстові файли Дуже добре Docker entrypoint Добре Великий бізнес-застосунок Не підходить Складна обробка даних Можливо, але краще Python Web frontend Не підходить echo $?;</syntaxhighlight>
</syntaxhighlight> grep шукає текст.; while [ "$count" -le 5 ]; do Скопіювати файл:
"$var"Підставляє змінну й зберігає пробіли '$var'Не підставляє змінну $varПідставляє змінну, але має змогу зламатися на пробілах </syntaxhighlight>
</syntaxhighlight>
Висновок
!;<syntaxhighlight lang="bash"> {| class="wikitable" echo "Hello, Bash!"Коментарі починаються з символу <code>#</code>.; #!/usr/bin/env bash crontab -e <syntaxhighlight lang="bash"> !; Значення Замінити текст:</syntaxhighlight> echo "Починаємо роботу" npm test
!;</syntaxhighlight>
</syntaxhighlight> 0 2 * * * /home/user/backup.sh хвилина година день_місяця місяць день_тижня команда
!; Типові задачі:
</blockquote> ShellCheck сприяє знайти: <blockquote> </syntaxhighlight> Показати PATH: set -e </syntaxhighlight> set -euo pipefail </blockquote> <syntaxhighlight lang="bash"> {| class="wikitable" <syntaxhighlight lang="bash"> Створити архів: <syntaxhighlight lang="bash"> У Bash дуже істотно правильно використовувати лапки.; Термін == Bash і Git == !; Пояснення date=$(date +%Y-%m-%d-%H-%M-%S) done == grep == Копіювання файлу через scp: '''sed''' застосовується для потокового редагування тексту.; Що вивчати Приклад: <syntaxhighlight lang="bash"> <syntaxhighlight lang="bash"> <syntaxhighlight lang="bash"> </syntaxhighlight> Приклад: <syntaxhighlight lang="bash"> <syntaxhighlight lang="bash"> Приклад: !; Перевага <syntaxhighlight lang="bash"> <syntaxhighlight lang="bash"> echo "Неповнолітній" <syntaxhighlight lang="bash"> git clone https://example.com/repo.git </syntaxhighlight> == Коли Bash — хороший вибір == |- | '''Linux-адміністрування''' | Керування серверами, файлами, сервісами | systemctl, journalctl, ssh |- | '''DevOps''' | автоматизація процесів deployment, CI/CD, Docker | deploy.sh, build.sh, backup.sh |- | '''Backend''' | Запуск сервісів, тестів, міграцій | npm, php artisan, python manage.py |- | '''Робота з файлами''' | Пошук, копіювання, архівація | find, cp, tar, rsync |- | '''Логи''' | Аналіз журналів системи й застосунків | grep, tail, awk, sed |- | '''Backup''' | Резервне копіювання файлів і баз | pg_dump, tar, rsync |- | '''CI/CD''' | Команди збірки й тестування | GitHub Actions, GitLab CI |- | '''ERP-інфраструктура''' | Обміни, нічні задачі, імпорт/експорт | cron, shell scripts, database dumps |} Небажано: mkdir -p logs/2026/may [[Категорія:Автоматизація]] {| class="wikitable" Перейменувати або перемістити: </syntaxhighlight> mkdir -p "$backup_dir" Приклад: <syntaxhighlight lang="bash"> <syntaxhighlight lang="bash"> </blockquote> <syntaxhighlight lang="bash"> == Встановлення і доступність == pytest == Shebang == </syntaxhighlight> !; Параметр </syntaxhighlight> fi == Недоліки Bash == {| class="wikitable" !; Чи підходить Bash?; if [ -f "$1" ]; then echo "Config exists" <syntaxhighlight lang="bash"> |- | '''Використовувати <code>set -euo pipefail</code>''' | Скрипт краще реагує на помилки |- | '''Брати змінні в лапки''' | Захист від пробілів і спецсимволів |- | '''Перевіряти аргументи''' | Скрипт має пояснювати, що очікує |- | '''Не хардкодити паролі''' | Секрети мають бути в environment variables або secret storage |- | '''Логувати дії''' | Легше розбирати помилки |- | '''Використовувати ShellCheck''' | Автоматична перевірка скриптів |- | '''Розділяти складну логіку на функції''' | Скрипт легше читати й підтримувати |} echo "Listing files in: $directory" Виконати другу команду тільки якщо перша успішна: #!/usr/bin/env bash !;</syntaxhighlight> </syntaxhighlight> <syntaxhighlight lang="bash"> == Арифметика == == Для чого застосовується Bash == * помилки quoting; * невизначені змінні; * небезпечні конструкції; * проблеми переносимості; * типові помилки Bash.; Пояснення == PATH == </syntaxhighlight> docker logs container_name <syntaxhighlight lang="bash"> mkdir reports z=$((20 / 4)) </syntaxhighlight> !; Змінні середовища доступні дочірнім процесам.; Компонент <syntaxhighlight lang="bash"> Створимо файл <code>hello.sh</code>: == tar == <syntaxhighlight lang="bash"> == xargs == </syntaxhighlight> |- | '''Доступність''' | Bash є собою майже на кожному Linux-сервері |- | '''Швидкість автоматизації''' | Багато задач можна автоматизувати за кілька рядків |- | '''інтеграційні функціональні можливості з Unix-утилітами''' | grep, find, awk, sed, tar, curl, ssh |- | '''Потужні pipes''' | Команди без зайвих зусиль поєднувати |- | '''Добрий для DevOps''' | Deployment, CI/CD, backup, Docker |- | '''Простий старт''' | Перші команди без зайвих зусиль вивчити |- | '''Ідеальний для серверів''' | Linux-сервери часто адмініструються через Bash |} '''curl''' застосовується для HTTP-запитів і завантаження файлів.; Значення <syntaxhighlight lang="bash"> Приклади команд Docker: <syntaxhighlight lang="bash"> #!/usr/bin/env bash curl https://example.com kill 1234Приклад:
Безпечна робота зі скриптами
Показати домашній каталог:
</syntaxhighlight>
echo "$HOME"
переважні аспекти Bash
chmod
Завантажити файл:
</syntaxhighlight>
</syntaxhighlight>
- !/bin/bash
</syntaxhighlight>
echo "Strict mode enabled"
Показати всі змінні середовища:
- !/usr/bin/env bash
PATH — це список каталогів, у яких Bash шукає виконувані команди.; fi count=1
<syntaxhighlight lang="bash"> Приклад пошуку великих файлів: mkdir -p backup Створити змінну середовища: == Bash у порівнянні з іншими інструментами == !; Перебір значень: !; Напрям Символ pipe: #!/usr/bin/env bash echo "File: $file"Якщо команда не запускається, можливо, її немає в PATH.; |-
sh Bash має більше можливостей, але sh більш переносимий Zsh Zsh зручніший як інтерактивна shell, Bash частіше застосовується в скриптах Fish Fish зручний для користувача, але не сумісний із Bash-синтаксисом PowerShell PowerShell сильний у Windows і функціонує з обʼєктами, Bash сильний у Unix/Linux Python Python краще для складної логіки, Bash краще для склеювання команд Go Go краще для надійних CLI-утиліт, Bash швидший для простих скриптів Видалити файл: -d '{"name":"Anna"}'
Цикл while
1 Terminal, shell, Bash 2 pwd, ls, cd 3 Робота з файлами: cp, mv, rm, mkdir 4 cat, less, head, tail 5 grep і find 6 Pipes і redirect 7 Змінні й quoting 8 Аргументи скрипта 9 if, test, перевірка файлів 10 for, while 11 functions 12 exit codes 13 set -euo pipefail 14 ShellCheck 15 cron, ssh, curl, tar 16 Docker, Git, CI/CD
Небезпечний підхід:
which bash grep -i "error" app.log
|- | '''ОС''' | Linux, macOS або WSL у Windows |- | '''Shell''' | Bash |- | '''Редактор''' | VS Code, Vim або Nano |- | '''Перші команди''' | ls, cd, cat, grep, find |- | '''Перший скрипт''' | hello.sh або backup.sh |- | '''Перевірка''' | ShellCheck |- | '''Практика''' | Логи, backup, Git, Docker, cron |}!; -name "*.log"
chmod 755 script.sh
Bash і PostgreSQL backup
Приклад: Bash — це інструмент, який надає можливість керувати системою, запускати команди й автоматизувати повторювану роботу через скрипти.
!;
find .; Інструмент docker run app == Мінімальний набір для старту ==export APP_ENV=production == Перший Bash-скрипт == echo "Готово" echo "Exit code: $?"find .; Значення
!; Недолік
echo "one"; echo "two"
fi
check_file() { return 0 Terminal — це вікно.; Рекомендація
Безпечніше:
== Порівняння рядків == awk '{sum += $2} END {print sum}' data.txt <syntaxhighlight lang="bash"> bash <syntaxhighlight lang="bash"> Інші приклади: Знайти файл:fi
</syntaxhighlight>
echo "Hello, $1" git commit -m "Update" </syntaxhighlight>Bash і Docker
backup_dir="/backups/postgres"
Змінні
ps aux | grep nginx else Приклад команд збірки:kill -9 1234
У Bash немає кнопки “скасувати”.; rm notes_old.txt
; Приклад: На більшості Linux-систем Bash уже встановлений.; Опція Типові права: filename="my file.txt"
</syntaxhighlight>|- | <code>-f file</code> | існує звичайний файл |- | <code>-d dir</code> | існує каталог |- | <code>-e path</code> | шлях існує |- | <code>-r file</code> | файл доступний для читання |- | <code>-w file</code> | файл доступний для запису |- | <code>-x file</code> | файл виконуваний |} == Bash і CI/CD == !;<syntaxhighlight lang="bash"> '''Bash''' — один із найважливіших інструментів у Linux, DevOps і серверній розробці.; Помилка Функція з кодом повернення: !; count=$((count + 1)) |- | <code> "$a" = "$b" </code> | рядки рівні |- | <code> "$a" != "$b" </code> | рядки не рівні |- | <code> -z "$a" </code> | рядок порожній |- | <code> -n "$a" </code> | рядок не порожній |} if [ "$count" -gt 10 ]; then <syntaxhighlight lang="bash"> == Pipes == exit 1 !; Значення == Цикл for == docker ps Порахувати кількість помилок: curl -O https://example.com/install.sh Знайти всі log-файли: ls /unknown 2> errors.log </blockquote>} return 1 grep -R "database" .; Етап cp *.txt backup/ Створити вкладені каталоги: git status
Умови if
Кожна команда повертає код завершення.; Що означає
Функція з аргументом: </syntaxhighlight>
; Значення sed -n '10,20p' file.txt У Bash змінні створюються без пробілів навколо знакаЗнайти файли, змінені за останню добу: '''Команда <code>rm -r</code> має змогу видалити цілий каталог разом із файлами.''' Вивести першу колонку: '''cron''' застосовується для запуску задач за розкладом.; Символ <blockquote> <syntaxhighlight lang="bash"> '''Bash — це не без ускладнень оболонка.; Чому це проблема Формат: Приклад умови:=.; Значення </syntaxhighlight> </syntaxhighlight> cp notes.txt backup/notes.txtФункція без аргументів: Redirect перенаправляє введення або виведення.; Запис Запуск: !; {| class="wikitable" else </blockquote> x=$((10 - 3)) великих програм зі складною бізнес-логікою забезпечується через Bash не є собою найкращим вибором; додатково реалізовано але він незамінний для командного рядка, серверів і автоматизації.; -name "*.tmp" -print0 | xargs -0 rm == Робота з каталогами == curl -O https://example.com/file.zip У Bash-скриптах часто використовують суворіші конфігурація.; Як застосовується Bash <blockquote> y=$((4 * 5)) !; Небезпечні команди треба перевіряти до запуску.'''Показати процеси: <syntaxhighlight lang="bash">
755 власник має змогу все, інші можуть читати й виконувати 644 власник має змогу читати й писати, інші тільки читати 600 тільки власник має змогу читати й писати rm -r reports
== Джерела == == Логічні оператори == touch notes.txtname="Anna" <syntaxhighlight lang="bash"> Видалити каталог із вмістом: echo "Arguments count: $#" <syntaxhighlight lang="bash"> age=18 == Bash в ERP-інфраструктурі == Або записати набір команд у файл: awk '{print $1}' access.log == sudo == date=$(date +%Y-%m-%d)ps aux
} say_hello() { tar -xzf backup.tar.gz
; ssh user@example.com </syntaxhighlight>
Примусово завершити:
echo "Script name: $0" </syntaxhighlight>
Порахувати суму другої колонки:
</syntaxhighlight>
!; Приклади
- !/usr/bin/env bash
; Код ps aux | grep nginx
- !/usr/bin/env bash
curl
Перевірити версію Bash: npm run build
<syntaxhighlight lang="bash">; Знайти бізнес-процес: $0Назва скрипта $1Перший аргумент $2Другий аргумент $@Усі аргументи $#Кількість аргументів echo "$PATH" #!/usr/bin/env bash Виконати другу команду, якщо перша завершилась помилкою:У Bash майже завжди краще писати змінні в подвійних лапках:
"$var". git pushПоказати номери рядків:
find .;== Небезпечні команди ==
Bash, Shell і Terminal
- !/usr/bin/env bash
Bash і cron
== Exit code == Bash підтримує роботу арифметичні вирази.; Порівняння з Bash Відкрити crontab: |- | '''Назва''' | Bash |- | '''Повна назва''' | Bourne Again SHell |- | '''Тип''' | Командна оболонка і мова скриптів |- | '''Походження''' | еволюція Bourne shell |- | '''Основні системи''' | Linux, Unix, macOS, BSD, WSL |- | '''Файли скриптів''' | .sh, .bash |- | '''Головні сфери''' | DevOps, Linux, сервери, CI/CD, автоматизація процесів, backup, deployment |- | '''Складність для новачків''' | Низька для базових команд, середня для скриптів, висока для складної автоматизації |- | '''офіційно затверджений проєкт''' | GNU Bash |} Рекомендовано:directory="$1"
Функції
chmod +x script.sh
</syntaxhighlight>
</syntaxhighlight>
- !/usr/bin/env bash
mkdir -p "$backup_dir"
GET-запит: Запуск через bash:
Перебір файлів:echo $filename Послідовне виконання:Перша команда
exec "$@" Або зробити файл виконуваним:
Terminal Програма-вікно, через яку користувач системи вводить команди Shell Командна оболонка, яка приймає й виконує команди Bash Один із найпопулярніших різновидів shell Shell script Файл із командами shell ; * GNU Bash Manual: https://www.gnu.org/software/bash/manual/
- GNU Bash: https://www.gnu.org/software/bash/
- POSIX Shell Command Language: https://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html
- ShellCheck: https://www.shellcheck.net/
- GNU Coreutils Manual: https://www.gnu.org/software/coreutils/manual/
- Linux man-pages: https://www.kernel.org/doc/man-pages/
</syntaxhighlight>
; Bash — це мова команд для Linux/Unix-світу.; Це універсальний інструмент, який надає можливість перетворювати ручні дії в повторювані, контрольовані й автоматизовані процеси.
</syntaxhighlight> find .;Pipes — одна з найсильніших ідей Bash: прості команди можна поєднувати в потужні ланцюжки.
Коментарі
ls /unknown-folder
-eqдорівнює -neне дорівнює -gtбільше -geбільше або дорівнює -ltменше -leменше або дорівнює </syntaxhighlight>
== find == Знайти каталоги: echo "$item"'''Для сучасних Bash-скриптів часто використовують <code>#!/usr/bin/env bash</code>, бо він шукає Bash через PATH.''' done Bash-скрипт має змогу приймати аргументи.; Перед виконанням треба уважно перевірити шлях.''' == Змінні середовища == == Аргументи скрипта == <syntaxhighlight lang="bash"> <blockquote> <syntaxhighlight lang="bash"> == Bash і backup == <syntaxhighlight lang="bash"> if [ "$#" -ne 1 ]; then <blockquote> <syntaxhighlight lang="bash"> sum=$((a + b)) [[Категорія:CI/CD]] ./script.sh hello worldssh -i key.pem user@example.com Зробити скрипт виконуваним: grep "error" app.log | wc -l
</syntaxhighlight>
find .; Пояснення
echo "Starting application..." echo "$count" tar -czf "$backup_dir/files.tar.gz" /var/www
Pipe передає результат однієї команди в іншу.; Неправильно:
; Якщо Linux-сервер — це машина, то Bash — це панель керування, через яку розробник або адміністратор запускає, перевіряє, ремонтує й автоматизує роботу системи.
Створити файл:
!;<syntaxhighlight lang="bash"> Запуск:; Команда
sudo запускає команду з правами адміністратора.; Чому небезпечна
<syntaxhighlight lang="bash"> {| class="wikitable" == Quoting == if [ -f "config.yml" ]; then pg_dump "$database" > "$backup_dir/$database-$date.sql" * роботи з Linux; * серверного адміністрування; * автоматизації; * backup; * CI/CD; * Docker; * Git; * cron; * аналізу логів; * деплою; * ERP-інфраструктури; * щоденної роботи розробника.; fi <syntaxhighlight lang="bash">Простими словами
backup_dir="/backups/$date" * backup бази даних; * імпорт файлів; * експорт звітів; * архівування логів; * запуск нічних обмінів; * синхронізація каталогів; * запуск міграцій; * перевірка сервісів; * моніторинг дискового простору; * актуалізація застосунку.; echo "Більше ніж 10" tar -czf backup.tar.gz folder/</syntaxhighlight>
ShellCheck — інструмент для перевірки Bash/shell-скриптів.;
<syntaxhighlight lang="bash"> curl -X POST https://api.example.com/users \ name = "Anna" done echo "Config exists" Bash потрібен для: Bash надає можливість вводити команди вручну або записувати їх у файл-скрипт.; Задача find /var/log -type f -size +100M Bash часто застосовується в CI/CD.; |- | <code>rm</code> | Видаляє файли |- | <code>rm -r</code> | Видаляє каталоги з вмістом |- | <code>chmod -R</code> | Масово змінює права |- | <code>chown -R</code> | Масово змінює власника |- | <code>dd</code> | має змогу перезаписати диск або розділ |- | <code>mkfs</code> | Форматує файлову систему |} '''awk''' застосовується для обробки тексту й колонок.; -mtime -1 <syntaxhighlight lang="bash"> bash hello.sh for file in *.txt; do echo "Backup completed: $backup_dir" = Bash = find "$directory" -type f Знайти бізнес-процес: |- | '''0''' | Успішне виконання |- | '''не 0''' | Помилка або особливий стан |}Bash має змогу бути корисним для ERP-систем.; це командна оболонка і мова скриптів, яка широко застосовують, коли потрібно в Linux, Unix-подібних системах, macOS, DevOps, CI/CD, адмініструванні серверів, автоматизації задач, роботі з файлами, логами, процесами, Docker, Git та іншими інструментами командного рядка виступає ключовою рисою Bash або Bourne Again SHell.; Bash — це оболонка, яка всередині цього вікна виконує команди. </syntaxhighlight>
for item in apple banana orange; doПриклад backup-скрипта:Запуск скрипта щодня о 02:00:
Завершити бізнес-процес:
Запустити Bash:
echo "$sum" Приклад: Подивитися вміст:
; ls -la >записати результат у файл, перезаписавши його >>додати результат у кінець файлу <взяти вхідні інформаційні дані з файлу 2>перенаправити помилки == Приклад якісного Bash-скрипта == echo "Config not found" {| class="wikitable" say_hello "Anna" '''Команда <code>rm</code> видаляє файли.; Приклад для PHP: == Хороші практики Bash == echo "$PATH" <syntaxhighlight lang="bash">[[Категорія:Мови програмування]] Ці поняття часто плутають.;<blockquote>vendor/bin/phpunit Пошук без урахування регістру:
<syntaxhighlight lang="bash"> echo "Directory does not exist: $directory" if [ !; '''find''' шукає файли й каталоги.; fi docker build -t app .;; Практика
</syntaxhighlight>
chmod змінює права доступу.; Bash часто використовують у Docker entrypoint-скриптах.; tar -tzf backup.tar.gz
Коротко
echo "Дорослий"
name="Anna"
Bash перетворює командний рядок на мову автоматизації.
echo "First argument: $1" !; Вираз == ShellCheck == echo "Hello" > hello.txt a=5 !; -type dset -euo pipefail
mv notes.txt notes_old.txt
else
Класичний варіант:
</syntaxhighlight>
== ssh == Безпечніший варіант для файлів із пробілами: elseПриклад резервного копіювання PostgreSQL:
</syntaxhighlight> df -h scp file.txt user@example.com:/home/user/Пошук у каталозі:
find .; -name "*.tmp" | xargs rm
</syntaxhighlight> if [ -n "$name" ]; then
echo "Usage: $0 <directory>" <syntaxhighlight lang="bash"> '''У Bash пробіли навколо <code>=</code> при присвоєнні змінної не ставляться.''' |- | <code>set -e</code> | завершити скрипт при помилці |- | <code>set -u</code> | помилка при використанні невизначеної змінної |- | <code>set -o pipefail</code> | pipe вважається помилковим, якщо помилилась будь-яка команда в ланцюжку |}Shebang — це перший рядок скрипта, який вказує, якою програмою запускати файл.; Значення Типові команди Git у Bash: echo "Цей рядок виконається" POST-запит із JSON: Приклад:
{| class="wikitable"Підключення з ключем: