Pipedija - tautosaka, gandai, kliedesiai ir jokios tiesos! Durniausia wiki enciklopedija durnapedija!


Šebangas

Iš Pipedijos - durniausios enciklopedijos.
Jump to navigation Jump to search

Šebangas - tai tokia seka iš grotelių simbolio ir šauktuko - t.y., "#!", kuria prasidedantis failas visokių UNIX sistemų būna suprantamas, kaip skriptas. Pati standarto esmė - jei UNIX šelas gauna vykdymui programą, jis tikrina pirmus du simbolius, ir jeigu jie yra šebangas, t.y., "#!", tai skaito, kad tai ne dvejetainis kodas, o interpretuojamas, kurį reikia perduoti kitam interpretatoriui, nurodytam išsyk po šebango.

Kitaip tariant, jei failo pradžioje yra "#!" - tai reiškia, kad čia tokia programa, kuriai vykdyti reikia iškviesti kokį nors interpretatorių. Interpretatorius, kuris iškviečiamas, nurodomas išsyk po šebango (be tarpų) parašant pilną UNIX kelią iki to interpretatoriaus, pvz., "#!/bin/sh". Visa kita, kas yra po \n simbolio, t.y., eilutės galo - tai jau kodas, skirtas atitinkamam interpretatoriui.

Pavadinimas "šebangas" yra kilęs matomai nuo to, kad pirmas toksai interpretatorius paprastai būdavo paprastas šelas, kurio pavadinimas būdavo "sh", o tuo tarpu šauktukas žargoniškai būdavo vadinamas "bang", tai gavosi "sh-bang", ilgainiui pavirtęs į "shebang". Kiti gi sako, kad pavadinimas kilęs nuo to, kad grotelės vadinamos "sharp", tai sutrumpinus jas, gavosi "sh", o jau tada - "she-bang". Ar taip, ar anaip, tiesiog pavadinimas gaunasi "šebangas", vat ir viskas.

Šitas pats šebangas naudojamas ne tik UNIX skriptams, bet ir visokiems WWW naudojamiems skriptams, paleidžiamiems per CGI ar SSI, tai tenai irgi būna dedamas šebangas ir nurodomas interpretatorius. Netgi tais atvejais, kai skriptai analogiškai paleidžiami Windows sistemose, visvien naudojamas tas pats UNIX tipo kelias su šebangu.