Skript Interpreten in Linux: Unterschied zwischen den Versionen
(Die Seite wurde neu angelegt: „==Der Interpretor in der Windowswelt== {| border=1 cellpadding="2" |- ! Endung ! Interpretor |- | .pl | Perl |- | .py | Python |- | .bat | command.com |- | .c…“) |
|||
| Zeile 1: | Zeile 1: | ||
==Der Interpretor in der Windowswelt== | ==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. | ||
{| border=1 cellpadding="2" | {| border=1 cellpadding="2" | ||
|- | |- | ||
| Zeile 18: | Zeile 20: | ||
| cmd.exe | | cmd.exe | ||
|} | |} | ||
| + | |||
==Der Interpretor in der Linuxwelt== | ==Der Interpretor in der Linuxwelt== | ||
Unter Unix/Linux entscheidet nicht die Suffix welchem Interpretor ein Skript übergeben wird, da ja in | Unter Unix/Linux entscheidet nicht die Suffix welchem Interpretor ein Skript übergeben wird, da ja in | ||
Version vom 25. Mai 2023, 02:55 Uhr
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 Interpretor in der Linuxwelt
Unter Unix/Linux entscheidet nicht die Suffix welchem Interpretor ein Skript übergeben wird, da ja in der Regel keine Suffix vorhanden ist. Die Art wird durch die Datei bestimmt, und zwar durch die ersten Bytes einer Datei. Wenn wir unser Skript mit
- file skript
skript: ASCII text
untersuchen sehen wir, dass es als normaler ASCII Text interpretiert wird. Bei einem Programmaufruf wird es einfach der aktuellen Shell übergeben (es gibt ausser der bash noch andere Shells z.B. bourne-shell (bsh), korn-shell (ksh), ash). Um sicherzugehen, dass es der richtigen Shell übergeben wird, fuegt man an den Skriptanfang einfach ein #! an, in unserem Fall ein #!/bin/bash für die Bourne-Again Shell. Das bedeutet ,dass das Programm welches hinter dem #! (Gobang Operator) steht der Interpretor ist, dem das Skript übergeben wird.
#!/bin/bash date hostname pwd
Selbst in der C shell ist somit sichergestellt ,dass das Skript der Bash übergeben wird
- file skript
skript: Bourne-Again shell script text executable