Selbstextrahierende komprimierte Dateien
Zuletzt verändert am 24. Juli 2026 • 1 Min. Lesezeit • 140 WörterHeute habe ich aus einem PDF-Dokument (disclosure.pdf) eine selbstextrahierende, komprimierte Datei erstellt.
Heute habe ich aus einem PDF-Dokument (disclosure.pdf) eine selbstextrahierende, komprimierte Datei erstellt. Zuerst habe ich die PDF-Datei komprimiert:
bzip2 disclosure.pdfDann habe ich eine Textdatei (header.txt) mit folgendem Inhalt erstellt:
!/bin/sh
echo ""
echo "MyPackage v99.99 - extracting archive with bunzip2… please wait"
echo ""
SKIP=`awk '/^__ARCHIVE_FOLLOWS__/ { print NR + 1; exit 0; }' $0`
#Take the archive portion of this file and pipe it to bunzip2
tail +$SKIP $0 | bunzip2 > disclosure.pdf
exit 0
__ARCHIVE_FOLLOWS__Anschließend habe ich beide Dateien (header.txt und disclosure.pdf.bzip2) zusammengefügt:
cat header.txt disclosure.pdf.bzip2 > disclosure.pdf.bzip2.shDanach muss ich der Datei nur noch Ausführungsrechte für alle Benutzer zuweisen:
chmod a+x disclosure.pdf.bzip2.shUm die Datei zu entpacken, gebe ich einfach Folgendes ein:
./disclosure.pdf.bzip2.shNatürlich muss das Programm „bunzip2“ auf dem System des Empfängers dieser Datei installiert sein; man kann den bzip2-Algorithmus problemlos durch einen anderen ersetzen, z. B. durch „tar“.