Shebang in Bash-Skript

Fumbani Banda 30 Januar 2023
  1. Bash Shebang (#!) und wie man es benutzt
  2. Linux-Skripte portabel machen
Shebang in Bash-Skript

Dieses Tutorial erklärt, was der Shebang ist und wie er in Bash-Skripten verwendet wird.

Bash Shebang (#!) und wie man es benutzt

Die #! Syntax wird in Shell-Skripten verwendet, um den Interpreter anzugeben, der das Skript in Unix/Linux-Betriebssystemen ausführen soll.

#!/bin/bash

Der Shebang beginnt mit dem Zeichen # und einem Ausrufezeichen, gefolgt vom vollständigen Pfad zum Interpreter.

Im Fall des oben angegebenen Code-Schnipsels wird angegeben, dass das Skript mit bash als Interpreter ausgeführt werden soll und der bash-Interpreter im Verzeichnis /bin zu finden ist. Wir gehen davon aus, dass bash im Verzeichnis /bin installiert wurde.

Skripte unter Linux werden von dem in der ersten Zeile angegebenen Interpreter ausgeführt.

Lassen Sie uns ein Skript schreiben, das #!/bin/bash verwendet. Das folgende Skript druckt den gesamten Inhalt des Ordners in einem langen Format mit bash als Interpreter.

#!/bin/bash

ls -al

Linux-Skripte portabel machen

#!/bin/bash geht davon aus, dass bash im Verzeichnis /bin installiert ist. Dies ist jedoch bei verschiedenen Unix-ähnlichen Betriebssystemen nicht immer der Fall. Um Skripte portierbarer zu machen, verwenden Sie #!/usr/bin/env bash.

#!/usr/bin/env bash

Dies weist die Shell an, nach der ersten Übereinstimmung von bash in der Variablen $PATH zu suchen und die erste gefundene als Interpreter zu verwenden. Dies ist nützlich, wenn Sie den absoluten Pfad des Interpreters auf dem System nicht kennen.

Lassen Sie uns ein Skript schreiben, das #!/usr/bin/env bash verwendet. Das folgende Skript gibt den gesamten Inhalt des Ordners in einem langen Format aus, wobei die erste bash-Shell, die es in der Variablen $PATH findet, als Interpreter verwendet wird.

#!/usr/bin/env bash

ls -al
Fumbani Banda avatar Fumbani Banda avatar

Fumbani is a tech enthusiast. He enjoys writing on Linux and Python as well as contributing to open-source projects.

LinkedIn GitHub

Verwandter Artikel - Bash Script