Shebang: Difference between revisions
No edit summary |
No edit summary |
||
Line 20: | Line 20: | ||
* <code>#!/usr/bin/env python</code> - Faili käivitamine Python'ga, kasutades env'd. | * <code>#!/usr/bin/env python</code> - Faili käivitamine Python'ga, kasutades env'd. | ||
Näidetes on näha, et shebang rida võib sisaldada argumente, mis edastatakse interpretaatorile | Näidetes on näha, et shebang rida võib sisaldada argumente, mis edastatakse interpretaatorile | ||
== Autor == | |||
Nimi: Tanel Peep | |||
Rühm: AK21 | |||
Aasta: 2017 | |||
== Allikad == |
Revision as of 22:51, 30 November 2017
Shebang on sümbolite jada, mida kasutatakse skriptide alguses ning mis koosneb "trellidest" ehk numbrimärgist ja hüüumärgist (#!). Shebang on tuntud ka nimedega sha-bang, hashbang, pound-bang, ja hash-pling.
Shebang on kasutusel UNIX-tüüpi operatsioonisüsteemide käivitatavates failides. Kui käivitatavas tekstifailis ehk skriptis on kirjeldatud shebang siis kasutatakse shebangi järel kirjeldatud interpretaatorit kogu ülejäänud koodi käivitamiseks. Ehk siis shebang kirjeldab asukoha argumendi, et käivitada skript argumendis kirjeldatud programmis. Näiteks kui skriptis on shebangi järel kirjeldatud /bin/bash, siis programmi laadija kasutab argumenti /bin/bash ja teab, et antud skripti tuleb käivitada bash programmis, mis asub kataloogis /bin.
Üldjuhul ignoreerib interpretaator shebangi, sest numbrimärge(#) on enamus programmeerimis- ja skriptimiskeeltes tähistatud kui kommentaari. Samuti mitmed programmeerimiskeeled, mis ei kasuta numbrimärki kommentaarina, ignoreerivad numbrimärki ja saavad aru shebang funktsioonist.
Kui skriptifailides on shebang kirjeldamata siis üldjuhul kasutatakse interpretaatorina /bin/sh.
Süntaks
Shebang interpretaatori vorm on järgnev:
#!intepretaator [valikulised-argument]
Kus interpretaator tähistab täispikka kataloogi teekonda käivitatavale programmile. Valikuline-argument tähistab käivitatavale programmile kirjeldatud argumenti.
Näited
Mõned shebang näited:
#!/bin/sh
- Faili käivitamine Bourne shelliga.#!/bin/bash
- Faili käivitamine Bash shelliga.#!/usr/bin/perl -T
- Faili käivitamine Perl'ga koos "tainted" argumendiga.#!/usr/bin/env python
- Faili käivitamine Python'ga, kasutades env'd.
Näidetes on näha, et shebang rida võib sisaldada argumente, mis edastatakse interpretaatorile
Autor
Nimi: Tanel Peep
Rühm: AK21
Aasta: 2017