Bash Scripte kompilieren

Auf der Suche nach einer Möglichkeit Bash Scripte zu kompilieren bin ich auf SHC gestossen. Man kann sich fragen warum ein bash Script kompiliert werden sollte: Ganz einfach, so kann nicht jeder den Inhalt lesen, was vorallem interessant ist, wenn das bash Script Passwörter enthält.

SHC wurde von Francisco Javier Rosales García entwickelt. Installiert wird SHC aus dem Repository oder kann direkt beim Entwickler heruntergeladen werden.


foobar:/home/camma# apt-get install shc

Das Bash Script kompiliert man so:
Zuerst muss ein Script erstellt werden:
linux:/home/camma# echo "#!/bin/sh" > meinbashscript.sh
linux:/home/camma# echo "echo \"Hallo Welt, ich bin kompiliert\" " > meinbashscript.sh

Nun muss getestet werden ob’s auch funktioniert.

linux:/home/camma# sh meinbashscript.sh
Hallo Welt, ich bin kompiliert

Nun kann das Script kompiliert werden:

linux:/home/camma# shc -f meinbashscript.sh

Kommt hier eine Fehlermeldung kann es sein, dass auf der Zeile 1 kein #!/bin/sh steht. Nun kann kontrolliert werden, ob das Script auch funktioniert.

linux:/home/camma# ./meinbashscript.sh.x
Hallo Welt, ich bin kompiliert

Es funktioniert. Der Compiler hängt jeweils am Schluss ein .x an den Dateinamen.