Skripti- või skriptikeel on programmeerimiskeel, mis on mõeldud lühikeste automatiseeritud ülesannete ja skriptide kirjutamiseks. Skriptid teevad tihti samu korduvaid toiminguid, mida inimene võiks sooritada samm-sammult, ning võimaldavad neid ülesandeid automatiseerida, muutes töö kiiremaks ja usaldusväärsemaks. Skriptikeeled on tavaliselt kõrgetasemelised, lihtsamini õpitavad ja sobivad kiireks arenduseks, kuid suudavad siiski katta laia ülesannete spektrit — failide töötlemisest ja süsteemihaldusest kuni veebilehtede ja andmeanalüüsini.
Kus skripte kasutatakse
Skriptid võivad töötada mõne teise programmi sees, näiteks veebibrauseris või Microsoft Excelis. Need võivad olla ka käsurealt (liidesest) käivitatavad skriptid, mis teevad kutsungeid operatsioonisüsteemi (OS) teenustele. Käsklusinterpreteeritav keskkond ehk shell (nt Bash või PowerShell) on tavaliselt interaktiivne — kasutaja sisestab käsu ja shell vastab sellele. Skriptkeeli kasutatakse laialdaselt ka suurarvutites, serverites ja arendus- või testikeskkondades automaatsete tööde, ülesannete ajastamise ja integratsiooni jaoks.
Mõisted ja piirjooned
Sõna „skriptikeel” kasutatakse mõnikord kitsamas tähenduses (keel, mis on loodud konkreetseks automatiseerimiseks või embed-eesmärgiks) või laiemas tähenduses (ka üldotstarbelised keeled, mis töötavad tõlgendatult). Mõned autorid eristavad kompileeritud keeli ja tõlgendatavaid keeli, kuid tänapäeval on piirid hägustunud: paljud „skriptikeeled” tõlgitakse esmalt vahekuju (nt bytecode) ja täidetakse virtuaalmasinas või kompileeritakse just-in-time (JIT) meetodil.
Mõnedel inimestel on arusaam, et skriptikeel peab olema seotud konkreetse kasutusega, teised lisavad sellesse kategooriasse ka üldotstarbelisi programmeerimiskeeli, mis on peamiselt tõlgendatavad või kasutatavad skriptimisel. Näiteks on olemas palju skriptikeeli ja tõlgendatud keeli nagu Python, Ruby, Perl, Bash, PowerShell, Lua ja JavaScript. Kuigi Java ise ei ole skriptikeel tavamõistes (see kompileeritakse JVM-ile), eksisteerib palju keskkondi ja keele-variantide kombinatsioone ning mõnel juhtudel kasutatakse üldotstarbelisi keeli skriptide kirjutamiseks.
Eelised ja piirangud
- Eelised: kiire arendus, lihtne syntaks, tugev sobivus automatiseerimiseks ja prototüüpimiseks, hea integratsioon hostrakendustega (brauserid, kontoriprogrammid, serverid).
- Piirangud: mõningane jõudluse- ja mälukasutuse piirang võrreldes optimeeritud kompileeritud programmidega; turvariskid, kui skriptid käivitatakse usaldamata allikatest; sõltuvused tõlgendajast või keskkonnast.
Praktilised näited
Allpool on lihtsate skriptide näited erinevates keskkondades. Need näited on mõeldud illustreerima, kuidas skriptid reeglina väljuvad korduvatest käsudest ja automatiseerivad igapäevaseid ülesandeid.
- Bash (lihtne failide loendamine ja salvestamine):
#!/bin/bash for f in *.txt; do echo "Võttes vastu: $f" done
- JavaScript (brauseris — DOM-i lihtne muutmine):
document.getElementById('soovitud-element').textContent = 'Tervist, maailm!';See käib veebibrauseris jooksva skripti tüüpilise ülesandena. - Python (failist lugemine ja rea töötlemine):
with open('andmed.txt') as f: for rida in f: print(rida.strip()) - Excel (VBA) — lihtne makro, mis muudab aktiivse lahtri teksti:
Sub Tervitus() ActiveCell.Value = "Tere!" End Sub
Selliseid makrosid kasutatakse sageli Microsoft Excelis andmete töötlemiseks.
Järeldus
Skriptikeel on praktiline tööriist korduvate ja ajakulukate tegevuste automatiseerimiseks. Kuigi terminoloogia varieerub ja piir nähtuste vahel (skriptikeel vs üldotstarbeline keel) ei ole alati selge, on oluline mõista skriptide peamisi kasutusvaldkondi, eeliseid ja võimalikke piiranguid. Valides keele või keskkonna, tuleb arvestada ülesande iseloomu, jõudlusnõudeid ja turvanõudeid.