LINUX.ORG.RU

Архив в бинарном виде в теле скрипта


0

1

Добрый день! Не подскажете, как реализовать скрипт на bash, в теле которого находится архив в бинарном виде? На практике это выглядит как строки скрипта, а затем,прям в этом же скрипте, бинарное предсавление архива.


printf «echo \»" && cat /путь/к/архиву && printf «\»\n" >> /путь/к/скрипту

Deleted
()

пишем скрипт

#!/bin/bash
SCRIPT=$(readlink -f "$0")
sed -e '1,/^END_OF_SCRIPT$/d' $SCRIPT | base64 -d | tar -xj
...
END_OF_SCRIPT
после добавляем архив:
cat ваш_архив.tar.bz2 | base64 >> ваш_скрипт

erfea ★★★★★
()

<немного оффтоп>
что, идея с «интерактивной RPM-кой»,наконец, провалилась? ну и славно! не дело это было...
</немного оффтоп>

aol ★★★★★
()

М. б. sharutils?

ABW ★★★★★
()
Ответ на: комментарий от aol

С интерактивностью там,кстати, проблему можно решить,мне решение с rpm не подошло по другим причинам.

Masha
() автор топика

Use Makeself, Luke.

http://megastep.org/makeself/

Многие (от nVidia до Epic Games, Unigine и многих игр из Humble Indie Bundle) используют именно этот скрипт. Я - тоже.
Быстро, удобно, проверено.

kaffeine
()
Ответ на: комментарий от Masha

Если кому-то будет нужно, вот так можно организовать пользовательский ввод из rpm.

key="Key_word"
echo -n "Input smth "
    while [[ "$key" == "Key_word" ]]
    do
    read  key <&1
    done

Masha
() автор топика
Ответ на: комментарий от generator

localhost ~ # grep Makeself /usr/portage/distfiles/NVIDIA-Linux-x86_64-295.53.run
# Generated by Makeself 1.6.0-nv
localhost ~ #

kaffeine
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.