Skript Interpreten in Linux
Version vom 30. Mai 2023, 10:30 Uhr von Linkai.zhang (Diskussion | Beiträge) (→Der Interpret in der Linuxwelt)
Der Interpretor in der Windowswelt
Eine Datei wird anhand ihrer Endung einem Program zugeordnet.
Das ist auch bei Skripten so.
Sie werden anhand ihrer Endung an einen Interpretor übergeben.
| Endung | Interpretor |
|---|---|
| .pl | Perl |
| .py | Python |
| .bat | command.com |
| .cmd | cmd.exe |
Der Interpret in der Linuxwelt
- Unter Unix/Linux entscheidet nicht die Dateiendung welchem Interpret ein Skript übergeben wird
- Dateiendungen sind optional und eher für die Organisation gedacht
- Der Dateityp und damit der Interpret wird durch die ersten Bytes des Dateiinhalts selbst bestimmt
- echo "echo Hallo Welt" > skript
- file skript
skript: ASCII text
- Hier sehen wir, dass es als normaler ASCII Text interpretiert wird.
- Bei einem Programmaufruf wird es einfach der aktuellen Shell übergeben (es gibt außer der bash noch andere Shells z.B. bourne-shell (bsh), korn-shell (ksh), ash.
- chmod +x skript
- ./skript
Hallo Welt
- Um sicherzugehen, dass es der richtigen Shell übergeben wird, fügt man an den Skriptanfang einfach ein #! an, in unserem Fall ein #!/bin/bash für die Bourne-Again Shell.
- Dadurch wird das Programm, welches hinter dem #! (Gobang Operator/Shebang) als Interpret für das Skript benutzt
#!/bin/bash date hostname pwd
Selbst in der C shell ist somit sichergestellt, dass das Skript der Bash übergeben wird
- csh
- file skript
skript: Bourne-Again shell script text executable