Ответ
Первой строкой должен быть шебанг (shebang), который указывает системе, каким интерпретатором выполнять скрипт.
Правильный вариант: #!/usr/bin/env bash
Почему именно так?
#!/bin/bash— жёстко указывает путь, который может отличаться в разных ОС (например, в некоторых BSD или контейнерах bash находится в/usr/local/bin/bash).#!/usr/bin/env bash— более переносимая запись. Утилитаenvищетbashв переменнойPATHпользователя, что гарантирует использование предпочитаемой версии.
Пример минимального скрипта:
#!/usr/bin/env bash
# Это комментарий. Скрипт выводит приветствие и список файлов.
echo "Скрипт запущен из под: $(whoami)"
ls -la
Перед запуском необходимо дать файлу права на выполнение:
chmod +x myscript.sh
./myscript.sh
Для скриптов, требующих строгой POSIX-совместимости (например, для Alpine Linux), можно использовать #!/bin/sh (но это уже не bash со всеми его расширениями).