Hva er Shell Script?
Shell-skripting innebærer å skrive en rekke kommandoer i en ren tekstfil, ofte referert til som et Shell-skript. Disse skriptene utføres av et skall, som er en kommandolinjetolk. De vanligste skjellene inkluderer
- Bash (Bourne Again SHell)
- Zsh (Z Shell)
- Fish.
Shell-skript kan variere fra enkle one-liners til komplekse programmer, og de brukes til å utføre en lang rekke oppgaver, for eksempel filmanipulering, systemadministrasjon og automatisering av repeterende oppgaver.
Fordeler med Shell Scripting:
Automasjon: Shell-skript lar brukere automatisere repeterende oppgaver, sparer tid og reduserer sjansen for menneskelige feil.
Tilpasning: Brukere kan lage skript skreddersydd til deres spesifikke behov, og gir en høy grad av tilpasning.
Batchbehandling: Shell-skript er utmerket for håndtering av batchbehandlingsoppgaver, der flere kommandoer må utføres i rekkefølge.
Systemadministrasjon: Shell-skript brukes ofte til systemadministrasjonsoppgaver, for eksempel sikkerhetskopiering, loggrotasjon og programvareinstallasjon.
Skrive et enkelt skallskript:
La oss lage et grunnleggende shell-skript som skriver ut en hilsen. Åpne et tekstredigeringsprogram og lag en fil med navnet greeting.sh
. Legg til følgende linjer:
#!/bin/bash
# This is a simple shell script
echo "Hello, welcome to the world of shell scripting!"
Lagre filen og gjør den kjørbar ved å kjøre følgende kommando i terminalen:
chmod +x greeting.sh
Nå kan du kjøre skriptet:
./greeting.sh
Utgangen skal være:
Hello, welcome to the world of shell scripting!
Kjører Shell-skript på Ubuntu og Linux:
Nå skal vi diskutere hvordan kjøre en .sh-fil i Ubuntu og Linux.
Gjør skriptet kjørbart: Før du kjører et shell-skript, sørg for at det er kjørbart. Bruk
chmod
-kommandoen som vist tidligere.Naviger til skriptkatalogen: Åpne en terminal og bruk
cd
-kommandoen for å navigere til katalogen som inneholder skallskriptet ditt.Kjør skriptet: Kjør skriptet ved å skrive
./scriptname.sh
i terminalen, og erstatte “scriptname” med det faktiske navnet på skriptet.
cd path/to/script
./greeting.sh
- Bruke Bash-kommandoen: Hvis skriptet ditt begynner med
#!/bin/bash
(kjent som en shebang), kan du også kjøre det ved å brukebash
-kommandoen.
bash greeting.sh
Hva betyr $@ i Shell Script?
I shell-script representerer $@
alle kommandolinjeargumentene som sendes til script. Det brukes ofte til å referere til listen over argumenter som separate enheter. Når den brukes innenfor doble anførselstegn, som "$@"
, bevarer den individuelle argumenter og tar hensyn til mellomrom og spesialtegn.
Her er en kort forklaring:
$@
: Representerer alle posisjonelle parametere (argumenter) sendt til skript eller funksjon. Hvert argument behandles som et eget ord."$@"
: Ved doble anførselstegn bevares separasjon av argumenter, og tillater mellomrom eller spesialtegn i individuelle argumenter.
Her er et enkelt eksempel for å illustrere:
#!/bin/bash
# Save this script as example.sh
echo "The total number of arguments is: $#"
echo "The arguments are: $@"
echo "The arguments with double quotes are: \"$@\""
Når du kjører dette skriptet med argumenter, for eksempel:
bash example.sh arg1 "argument 2" arg3
Det ville gi ut:
The total number of arguments is: 3
The arguments are: arg1 argument 2 arg3
The arguments with double quotes are: "arg1" "argument 2" "arg3"
Som du kan se, representerer $@
alle argumenter, og "$@"
bevarer de individuelle argumentene, selv om de inneholder mellomrom.