Hva er $ 0 i et bashskript?

Hva er $ 0 i et bashskript?

Bash er en kommandotolk og manus. Som andre former for koding, støtter den pakkespedisjon, variabler og funksjoner. Et skript er en fil med kommandoer som programvaren kan se og utføre. I Linux gir Bash oss posisjonsparametere som "$ 0", "$ 1", "$ 2," "$ 3," osv. I denne artikkelen vil en av dens posisjonsparametere, "$ 0," bli brukt.

Eksempel 1: Bruker $ 0 i et bash -skript

Navnet på terminalen eller skallet skript utvides med "$ 0". Ved initialisering av skallet er dette satt. $ 0 tildeles navnet på den katalogen hvis Bash kalles med en samling kommandoer. For å si det enkelt, bruker vi “$ 0” i bash for å lagre navnet på manuset og vise det i terminalen. Parametrene for Bash -kommandoen på Linux er "$ 0", "$ 1" og "$ 2, etc. Den første lagrer navnet på skriptet, den andre lagrer den første verdien, og så videre.

Nå, i denne delen, vil vi bruke “Echo” -kommandoen for å vise navnet på bash -skallet. For å gjøre dette, må vi utføre kommandoen på terminalen, men først må vi opprette en bash -fil. Siden en allerede eksisterer og ligger på skrivebordet, vil vi bruke den i denne artikkelen. Navnet er “Code.sh.”

For å skrive ut navnet på skriptet på terminalen når vi åpner denne filen, må vi først legge til skallet, som er "#!/bin/bash, ”. I neste linje må vi passere parameteren “$ 0” i Echo -kommandoen fordi filnavnet er lagret i denne parameteren.

#!/bin/bash
ekko $ 0

Vi vil nå utføre kommandoen ved først å legge inn begrepet “bash” og deretter navnet på skriptet, “kode.sh.”

Linux@linux: ~/desktop $ bash kode.sh

Som vist på skjermbildet nedenfor, når vi kjører denne kommandoen, navnet på skriptet, “Kode.SH, ”vises.

Alternativet "$ 0" i bash vil nå bli brukt i følgende avsnitt for å vise gjeldende navn på skriptet sammen med uttalelsen. For å oppnå dette, vil vi lage et skript der vi etter å ha lagt til skallet som beskrevet ovenfor, bruker "Echo" -kommandoen for å skrive ut uttalelsen, "Navnet på filen er:.”Uttalelsen som vi ønsker å skrive ut, må skrives med et omvendt komma før vi passerer" $ 0 "-variabelen, som lagrer skriptnavnet.

#!/bin/bash
ekko "Navnet på filen er:" $ 0

Kommandoen som vi nå vil bruke er "bash", etterfulgt av navnet på manuset, "kode.sh ”. Når vi utfører denne kommandoen, vises inngangsstrengen og skriptnavnet, som er lagret i "$ 0", begge.

Linux@linux: ~/desktop $ bash kode.sh

Du kan nå se på bildet nedenfor at filnavnet for skriptet, “Kode.SH, ”vises sammen med Echo -setningen,“ Navnet på filen er ”.

Eksempel 2: Vis skriptets navn på slutten ved å bruke Bashs “$ 0”.

Nå, i denne delen, skal vi bruke “$ 0” i skriptets sluttdel, som vil vise navnet på bash -filen på slutten. For dette skal vi konstruere et manus der vi først bruker bash -skallet, som er “#!bin/bash, ”og så initialiserer vi variablene“ x ”,“ y ”og“ z ”, tildeler verdier til hver av dem“ 6 ”for“ x ”,“ 4 ”for“ y ”og“ 9 ”for “Z”. Så vil vi bruke Echo -kommandoen til å skrive ut disse verdiene i det følgende. For å gjøre dette passerer vi “$” -parameteren sammen med variablene som inneholder tallene, så vi bruker “$ x”, “$ y,” og “$ z.”Dette vil vise verdiene i terminalen når bash -filen åpnes ved hjelp av kommandoen i terminalen.

Deretter bruker vi på følgende linje nok en gang “Echo” -kommandoen for å skrive ut uttalelsen og skriptets navn ved å bruke argumentet “$ 0.”Siden skriptets navn er lagret i filen, er uttalelsen vi trenger å skrive ut“ Navnet på filen er: ”og vi gjør dette ved å passere“ $ 0 ”som et argument.

#!/bin/bash
X = 6
Y = 4
Z = 9
ekko “$ x” “$ y” “sz”
ekko "Navnet på filen er:" $ 0

Kommandoen for å åpne skriptutgangen i terminalen brukes nå.

Linux@linux: ~/desktop $ bash kode.sh

Nå som denne kommandoen er utført, kan du se på bildet nedenfor at den først viste verdiene “6”, “4” og “9” før du viser uttalelsen “Navnet på filen er” og filnavnet ” kode.sh ”i linjen som følger.

Eksempel nr. 3: Bruke $ 0 i bash -funksjonen

I dette avsnittet vil vi bruke bash -funksjonen til å trekke fra to tall og skrive ut navnet på den aktuelle bash -filen ved å plassere en "$ 0" inne i funksjonskroppen. For å gjøre dette, vil vi utvikle et skript der vi lager en funksjon som heter “Func ()”. Fordi det er en brukerdefinert prosedyre, står vi fritt til å velge navnet. Deretter bruker vi i den følgende linjen krøllete parenteser for å danne funksjonens kropp. Innenfor disse parentesene bruker vi variabelen “Sub”, der vi lagrer subtraksjon av to tall ved å bruke “$” -parameteren.

Deretter bruker vi dobbeltrund-parentes. Innenfor disse parentesene utfører vi subtraksjon av to tall. Derfor bruker vi "$ 1- $ 2". Antallet vi spesifiserer når vi påkaller funksjonen “Func”, vil bli lagret i parameterverdiene “$ 1” og “$ 2”. Deretter bruker vi Echo -kommandoen for å skrive ut uttalelsen og svaret ved å bruke variabelen “Sub” med argumentet “$.”Fordi resultatet av subtraksjon lagres i dette.

Deretter bruker vi Echo -kommandoen til å skrive ut uttalelsen og navnet på skriptet ved å bruke "$ 0" uttalelsen er "navnet på skriptet er", og vi passerer argumentet "$ 0. Deretter kaller vi i den følgende linjen funksjonen ved å bruke navnet "Func" og levere to tall som argumenter, "50" og "30", som vil bli lagret i "$ 1" og "$ 2", før du utfører subtraksjonsoperasjonen.

#!/bin/bash
func ()

Sub = $ (($ 1 -$ 2))
ekko "Svaret er: $ sub"
ekko "Navnet på skriptet er:" $ 0

func 50 30

For å vise resultatet i terminalen, vil vi nå bruke den samme kommandoen som i forrige seksjon.

Linux@linux: ~/desktop $ bash kode.sh

Nå viste det resultatet av å trekke fra de gitte tallene, som er "20", med utsagnet "svaret er", og i følgende linje viste det utsagnet "navnet på skriptet er" sammen med navnet av bashskriptet, “Kode.SH, ”som vises ved å levere parameteren“ $ 0 ”til Bash.

Konklusjon

Denne artikkelen har diskutert med "$ 0" i Linux Bash -skript. Fordi filnavnet er lagret i dette "$ 0", har vi brukt det i forskjellige tilfeller og vist bash -skriptets navn i terminalen. I den første delen skrives skriptets navn ganske enkelt ved hjelp av Echo -kommandoen og "$ 0". I den andre delen brukte vi “$ 0” for å vise skriptets navn på slutten, og i det endelige eksemplet benyttet vi Bash -funksjonen () til å utføre en subtraksjonsoperasjon mens vi også brukte “$ 0” i funksjonens kropp.