Если вам не нужны пробелы, то openssl
обработает это с параметром -A
:
Итак:
$ ls -l sp2.bmp
-rw-r--r-- 1 sweh sweh 3000054 Apr 21 20:13 sp2.bmp
$ x=$(openssl base64 -A < sp2.bmp)
$ echo "$x" | wc
1 1 4000073
$ echo "$x" | openssl base64 -d -A > res
$ ls -l res
-rw-r--r-- 1 sweh sweh 3000054 Jul 30 10:00 res
$ cmp res sp2.bmp
$
Мы видим все данные base64 находятся в одной строке и могут быть декодированы.
man enc
объясняет параметр -A
.
Если вам нужно сохранить пробелы, вам необходимо удалить их (либо преобразовав в '\ n'
, либо удалив и используя -A
).
Не совсем так, лучше запаковать установщик в rpm и установить его через менеджер пакетов. Возиться с rpmdb — не лучшая идея
БОНУС :Если не хотите возиться с rpmbuild, посмотрите FPM:
https://github.com/jordansissel/fpm
Это мощный инструмент, который позволяет создавать или преобразовывать пакеты на лету