Bash introduktion

BASH bruges til at lave scripts, som er en automatisering af opgaver der skal udføres. Det kan f.eks. være at omdøbe mange filer på en specifik måde, eller at gemme mange billeder i forskellig størrelser.

Dette kursus er en overordnet gennemgang af nogle af de basale funktioner der skal bruges for at lave scripts. Det vil mest af alt bestå af eksempler. Hvis du ønsker en større forståelse af programmering kan du prøve at gennemgå mit Python kursus, som du kan finde her.

Forarbejde

For at arbejde med scripts skal vi først oprette en mappe, oprette en testfil og gøre den eksekverbar. Udfør følgende kommandoer efter du har åbnet kommandoprompten (På Ubuntu brug: Ctrl+Alt+T).

  1. mkdir bashkursus - Opret mappen bashkursus
  2. cd baskkursus - Gå til bashkursus
  3. touch test.sh - Opret filen test.sh
  4. chmod 700 test.sh - Gør filen eksekverbar
  5. ls - kontroller filen er der (grøn betyder at den er eksekverbar
thoj@thoj-VirtualBox:~$ mkdir bashkursus
thoj@thoj-VirtualBox:~$ cd bashkursus/
thoj@thoj-VirtualBox:~/bashkursus$ touch test.sh
thoj@thoj-VirtualBox:~/bashkursus$ chmod 700 test.sh 
thoj@thoj-VirtualBox:~/bashkursus$ ls
test.sh

Du kan nu åbne filen i den editor du foretrækker. Jeg anbefaler at du bruger Geany. Læs mere om Geany her.

Når du bruger Geany kan du udgøre programmet ved at trykke F5.

Når du opretter nye filer, så skal du huske at gøre dem eksekverbare med chmod 700.

Et eksempel

Her vil vi lave et script der skriver "Hej bruger".

#!/bin/bash 
a=Hej
b=bruger
echo $a $b
Hej bruger

Læg mærke til 4 ting

  1. Scriptet skal starte med #!/bin/bash
  2. Der må ikke være mellemrum når man sætter variabler
  3. Der skal ikke være et + mellem variablerne når man bruger echo
  4. Når du bruger echo vil det udskrive alle mellemrummene imellem variablerne.

Kommentarer

Det er altid en god ide at indsætte kommentarer og noter i sine scripts.

Hvis du vil indsætte kommentarer gøres det ved at indsætte et # foran.

#!/bin/bash 
# Dette er mit første script

a=Hej #første variabel
b=bruger #anden variabel
echo $a $b #udskrivning af variabler