Skript
I en Unix-miljö är ett skript en textfil som har följande egenskaper:
- Filen är exekverbar.
- Den första raden i filen börjar med en hashbang eller shebang, dvs. tecknena
#!följt av sökvägen till den programtolk/interpretator som ska användas för att tolka resten av textfilen.
Shell-skript / skalskript
Ett shell-skript innehåller skalkommandon. Den första raden behöver därför peka ut vilket skal som ska användas. Nedanstående rad använder det skal som är förinställt för användaren:
|
|
Nedanstående använder explicit skalet bash:
|
|
Den vanligaste filändelsen för ett shellskript är .sh. Filändelsen har
dock ingen påverkan på skriptets funktionalitet.
Köra ett shell-skript
För att köra ett shell-skript, dvs. en fil som uppfyller alla villkor för ett
skript och refererar till ett skalprogram i sin första rad, skriver vi bara dess
sökväg i terminalen. Om vi står i samma katalog som shell-skriptet skript.sh
skriver vi
$ ./skript.sh
Om skriptet ligger i en annan katalog kan vi självklart antingen ange den relativa eller den absoluta sökvägen till skriptet.
(Om du glömt bort vad det är för skillnad på en relativ sökväg och en absolut sökväg bör du repetera det.)
Python-skript
Ett pythonskript är ett skript som istället för att använda ett skalprogram för att köra textfilens innehåll använder en pythontolk. Detta betyder att den första raden i ett pythonskript behöver peka ut sökvägen till en pythontolk, t.ex.:
|
|
Ovanstående sökväg är fungerar dock inte om vi vill använda oss av en virtuell miljö eftersom ovanstående sökväg pekar explicit ut den pythontolk för Python 3 som är installerat på systemnivå.
Istället kan vi använda följande rad:
|
|
Raden ovan använder programmet env för att ta fram den miljö som användaren har aktiverat just nu och använder den för att hitta den version av programmet python3 som kommer först enligt den gällande miljön.
Köra ett pythonskript
Vi kör ett pythonskript på precis samma sätt som vi kör vilket skript som helst, dvs. att vi skriver dess sökväg i terminalen.
Argument till pythonskript
Vi vill ofta skicka argument till ett skript. För att ett pythonskript ska kunna få reda på vilka argument som skickats till den använder vi oss av variabeln argv i modulen sys. Argumenten är tillgängliga som en lista där det första elementet är kommandot som körts, följt av varje argument som ett separat element i listan.
Nedastående pythonkod skriver ut det första “riktiga” argumentet:
|
|
Sidansvarig: Johan Falkenjack
Senast uppdaterad: 2024-07-26
