Ett skriptspråk är ett programmeringsspråk som stöder skript. Skript är vanligtvis korta datorprogram som utför steg som en person skulle kunna utföra ett i taget. Detta automatiserar ett arbete för att göra det enklare och mer tillförlitligt. Ett skriptspråk är ofta ett enklare språk och lättare att lära sig än andra språk, men kan ändå göra många saker.

Skript kan köras inuti ett annat program, t.ex. i en webbläsare eller Microsoft Excel. De kan också vara ett skal som körs från ett kommandoradsgränssnitt och gör anrop till operativsystemet (OS). Skalet anses vara interaktivt - användaren kan välja vad han eller hon ska skriva och skalet svarar på kommandot. Dessa kan användas för att styra jobb på stordatorer och servrar.

Vissa säger att ett skriptspråk måste vara knutet till ett specifikt användningsområde. Andra använder en bredare definition och inkluderar allmänna programmeringsspråk som tolkas och inte kompileras. Allmänt användbart innebär att det kan användas på många olika sätt för olika saker. Vissa allmängiltiga språk (t.ex. Java) har varianter som kan scriptas (Javascript). Det finns ingen särskild regel för vad som är eller inte är ett skriptspråk.

Användningsområden

Skriptspråk används i många sammanhang där snabb utveckling, automation eller flexibilitet behövs. Vanliga användningsområden är:

  • Automatisering av administrativa uppgifter (t.ex. filhantering, schemalagda jobb).
  • Webbutveckling — klient‑sidan (i webbläsare) och server‑sidan (t.ex. för generering av dynamiska sidor och API:er).
  • Makron och automatisering i kontorsprogram (t.ex. Excel‑makron).
  • Byggskript och kontinuerlig integration, testautomatisering.
  • Inbäddad logik i applikationer, spelmotorer och IoT‑enheter (scripts styr spelobjekt, konfiguration eller plugin‑beteende).
  • Dataanalys och prototypframtagning där snabb iteration prioriteras framför maximal prestanda.

Vanliga skriptspråk (exempel)

  • JavaScript — dominerar klient‑sidan på webben, används även på serversidan (Node.js).
  • Python — populärt för automation, dataanalys, scripting i applikationer och som "glue" mellan system.
  • Bash/sh — skal‑skript för Unix‑liknande system, vanliga för systemadministration.
  • PowerShell — modernt shell och skriptspråk för Windows (och nu även multiplattform).
  • Perl och Ruby — historiskt viktiga för textbearbetning och webbapplikationer.
  • Lua — litet och lätt att bädda in; ofta använt som skriptspråk i spel och appar.
  • VBA — används för makron i Microsoft Office‑applikationer.
  • PHP — ursprungligen designat för server‑side scripting i webbutveckling.

Tekniska egenskaper och körningsmodeller

Skriptspråk körs i regel i någon form av tolk eller körmiljö, men utförandet kan variera:

  • Interpretation: koden läses rad för rad och utförs direkt av en tolk.
  • Bytekod + virtuell maskin: källkod kompileras till bytekod som sedan körs av en virtuell maskin (exempel: CPython, JVM för vissa varianter).
  • JIT‑kompilering: delar av koden kompileras i körtid till maskinkod för bättre prestanda.
  • Embedding: skriptspråk kan bäddas in i större applikationer som ger API:er för att styra programmet.
  • REPL (Read–Eval–Print Loop): många skriptspråk erbjuder interaktiva skal för snabb testning och felsökning.

För‑ och nackdelar

  • Fördelar: Snabb utveckling, kortare kod, hög produktivitet, bra för automation och prototyper, lätt att lära sig.
  • Nackdelar: Mindre optimerad prestanda än vissa kompilerade språk, ibland svagare typkontroll vilket kan leda till buggar, och beroende på körmiljö kan distribution och drift kräva ytterligare omsorg.

Säkerhet och bästa praxis

Skript som körs i system eller i användarkontext kan utgöra säkerhetsrisker. Följande rekommendationer är viktiga:

  • Validera och sanera all användarinmatning för att skydda mot kodinjektion.
  • Kör skript med minsta nödvändiga privilegier (least privilege).
  • Använd sandlådor eller isolerade körmiljöer för osäker eller extern kod.
  • Granska och underhåll tredjepartsskript och beroenden.
  • Signera och verifiera skript där det är möjligt för att säkerställa äkthet.

Exempel på enkla skript

Några korta exempel som visar hur ett litet skript kan se ut:

# Bash (lista filer och filtrera) ls -l | grep ".txt"  # Python (skriv ut rader som innehåller "error") with open('log.txt') as f:     for line in f:         if 'error' in line.lower():             print(line.strip())  # JavaScript (i webbläsare) console.log('Hej från ett skript'); 

Sammanfattning

Skriptspråk är verktyg för att automatisera uppgifter, bygga snabbt och integrera system. De används i allt från webbläsare och kontorsprogram till servrar och inbäddade system. Valet av skriptspråk beror på uppgiftens krav — snabb utveckling och flexibilitet kontra prestanda och typkontroll — samt på vilka plattformar och verktyg som ska integreras.