TGViewer
Bash Days | Linux | DevOps Bash Days | Linux | DevOps @bashdays · 23.6K subscribers
Post #200 12.2K
Привет, сейчас покажу интересную bash фичу. Которая ну совсем уж не очевидная и про нее мало кто знает.

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

#!/bin/bash

read_data() {
mapfile -t DATASET < <(sed '1,/^DATASET/d' "$0" | base64 -d)
}

read_data

echo ${DATASET[@]}

exit 0

DATASET
SGVsbG8gQmFzaERheXM=


Функция read_data считывает данные из самого скрипта. С помощью sed удаляются строки от начала файла до строки DATASET. А затем происходит декодирование оставшихся данных. В конце всё сохраняется в массив DATASET с помощью mapfile и выводится через echo.

Красота! Мой скрипт по итогу выведет на экран «Hello BashDays». Где это можно применить, понятия не имею. Возможно тебе удастся это куда-нибудь приспособить.

Еще в этом скрипте мне не нравится exit 0, если есть мысли как от него избавиться, велком в комментарии. Я чет покопался вчера, но так пока и не победил. Если убрать exit 0, оно будет работать, но в конце грязно выругается.

Бери на вооружение, возможно твой стартап нуждается в этом. Увидимся!

tags: #bash
—
💩 @bashdays
  • 👍 64
More from @bashdays
  1. Sep 29, 2026Самый жаркий холивар в команде — это не systemd, а какие заказать роллы на всю команду. Од…
  2. Sep 24, 2026Post #1565
  3. Sep 23, 2026Здрасти приехали, решил я в кой-то веке воспользоваться услугами Codex, создал аккаунт, по…
  4. Sep 22, 2026Всем привет, с вами TagdTagd. Сегодня опять поднимем тему архивов, но немного с другой сто…
  5. Sep 15, 2026Всем привет, с вами TagdTagd. И это вторая часть. Практическая. С первой частью можешь озн…
  6. Sep 9, 2026Всем привет, с вами TagdTagd! Я тут вынужденно перешёл на MAX. Просто Telegram перестал ра…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →