База знаний (цифровой суверенитет)
  • Bash - основы скриптования

    Команды BASH
    1 2 4

    A
    951
    0

    Содержание

  • A
    951
    0

    Многострочные комментарии


    Вот полная и актуальная на 2025 год шпаргалка по многострочным комментариям в Bash-скриптах — от классики до самых красивых и удобных способов.

    Топ-6 способов писать многострочные комментарии в Bash

    # 1. Классика — HereDoc (самый надёжный и правильный)
    : <<'COMMENT'
    Это многострочный комментарий.
    Можно писать всё что угодно:
      • пояснения
      • TODO
      • авторство
      • лицензию
    Даже кавычки " ' и $ переменные не интерполируются!
    COMMENT
    
    
    # 2. С произвольным маркером (мой личный фаворит)
    : <<'EOF'
    #!/bin/bash
    Скрипт делает резервную копию всех сайтов
    Автор: Alex
    Дата: 2025
    Требует: rsync, tar, notify-send
    EOF
    
    # 3. Если нужны переменные внутри комментария — без кавычек
    : <<COMMENT
    Сегодня $(date)
    Пользователь: $USER
    Домашняя папка: $HOME
    COMMENT
    # → переменные подставятся!
    
    # 4. Самый короткий и читаемый (2025 стиль)
    <<'#' 
    Это тоже комментарий!
    Работает потому что <<# — это встроенный маркер Bash
    #
    
    # 5. Многострочный комментарий с отступами (очень красиво)
    cat <<'EOF' >/dev/null
        ┌─────────────────────────────────────────────────────
        │ Скрипт: backup.sh
        │ Назначение: Ежедневный бэкап /var/www и баз MySQL
        │ Автор:      admin@company.ru
        │ Версия:     3.1 (2025-11-29)
        │ Требует права root
        Логи пишутся в /var/log/backup.log
        ┌─────────────────────────────────────────────────────
    EOF
    
    # 6. Комментарий-блок в одну строку (для ленивых)
    : <<{1..10}  # закомментирует следующие 10 строк (нестандартно, но работает)
    

    Рекомендуемые шаблоны для реальных скриптов (2025)

    #!/usr/bin/env bash
    set -euo pipefail
    
    : <<'INFO'
    Имя скрипта   : deploy.sh
    Описание: Деплой приложения через Docker Compose
    Автор         : Иван Иванов <ivan@company.ru>
    Дата создания : 2025-03-15
    Версия        : 2.4
    Требования    : docker, docker-compose, jq
    Использование : ./deploy.sh [staging|production]
    INFO
    
    # код скрипта...
    

    Итог: запомни всего один идеальный вариант

    : <<'EOF'
    Твой многострочный комментарий здесь
    Можно хоть 100 строк
    Всё игнорируется, переменные не подставляются
    EOF
    

    Это самый чистый, переносимый и читаемый способ в 2025 году.
    Работает в любом Bash ≥ 3.0, не ломается от кавычек, доллара и тире.