logo

Bash-variabler

Variabler är den väsentliga delen av programmering, eller så kan vi säga att de är andan i ett programmeringsspråk. Variabler anger minnesplatsen genom tecken, numeriska och alfanumeriska. De används för att refereras och manipuleras i ett datorprogram.

Vilka är variablerna?

Variabler är behållare som lagrar data eller en användbar information som värdet inuti dem. Nedan är syntaxen för en variabel:

 Variable_name =value 

En variabel är en kombinerad form av två ord, d.v.s. variera + kan, vilket innebär att dess värde kan ändras och att den kan användas flera gånger.

selen

Variabel är känd som den tillfälliga lagringen för alla typer av data som heltal, float, char, etc. Ett variabelnamn kan inkludera alfabet, siffror och understreck , och dess namn kan endast startas med alfabet och understreck.

Obs: Vi kan inte definiera ett variabelnamn som börjar med någon siffra.

Vad är Bash-variabler?

Vi kan inte använda bashvariabler utan att ha rätt information ( syntax, datatyper, typer, arbete ) om det, så låt oss gå igenom denna korta handledning för att få en lämplig översikt över Bash-variabler.

Känn först till syntaxen.

Syntax:

 Variable_name=value 

Regler för att definiera bashvariabler:

  1. Prefix variabelnamnet med dollar ($) tecken när du läser eller skriver ut en variabel.
  2. Lämna dollartecknet ($) medan du ställer in en variabel med valfritt värde.
  3. Ett variabelnamn kan vara alfanumeriskt, eller så kan det skrivas med ett understreck (_).
  4. Ett variabelnamn är skiftlägeskänsligt: ​​x och X betraktas som två olika variabler.
  5. variabelnamn kan skrivas antingen med UPPER_CASE eller LOWER_CASE bokstäver eller en blandning av båda som du vill.
  6. En variabel kan placeras var som helst i ett Bash-skript eller på kommandoraden, för vid körning kommer Bash att ersätta den med dess tilldelade värde. Det blev möjligt på grund av att man gjorde substitution innan kommandot kördes.
  7. Det ska inte finnas blanksteg på någon sida av likhetstecknet (=) mellan variabelnamnet och dess värde. Följande är några exempel på Ogiltiga variabler med blanksteg (betecknade med punkter ...) mellan dem enligt nedan:
    var1=...variabel1
    var2...=variabel2
    var3...=...variabel3
  8. Det finns inget behov av att använda några citattecken, varken enkla eller dubbla, för att definiera en variabel med ett enda teckenvärde som t.ex var1=variabel . För att mata in flera ord eller sträng som ett enda objekt i en variabel, använd sedan citattecken för att omsluta ditt innehåll i den variabeln.
    • Enkelt citat ('') hjälper till att behandla varje karaktär.
    • Dubbla citat ('') hjälper till att göra ersättningen.

Datatyper

I de formella programmeringsspråken måste du definiera datatypen för valfri variabel vid tidpunkten för variabeldeklarationen. Till exempel:

 int year=2012 char comp_name='jtp' 

Men i fallet med Bash behöver du inte definiera datatypen för någon variabel vid tidpunkten för variabeldeklarationen. Bash variabler är oskrivet , vilket betyder att bara skriva variabelnamnet genom att tilldela dess värde, så kommer den automatiskt att överväga den datatypen.

Så att om du tilldelar något numeriskt värde till variabeln, kommer det att fungera som heltal och om du tilldelar ett teckenvärde till variabeln, så blir det String.

 year=2012 comp_name=jtp 

Använd echo-kommandot, läs dem genom att tilldela $-tecken före deras namn, t.ex

echo $år
echo $namn

Typer av bashvariabler

Det finns två typer av variabler i ett skal eller vilket UNIX-system som helst.

  1. Systemdefinierade variabler
  2. Användardefinierade variabler

1. Systemdefinierade variabler: Dessa är de fördefinierade variablerna eftersom de skapas och underhålls av själva operativsystemet LINUX. Deras standardkonvention är att de i allmänhet definieras med versaler, dvs STORA_CASE. Så närhelst du ser en variabel definierad i versaler, är de troligen de systemdefinierade variablerna.

Dessa är följande systemdefinierade variabler enligt nedan:

1. BASH representerar skalnamnet.

Exempel:

 BASH=/usr/bin/bash 

2. BASH_VERSION anger skalversionen som bash innehåller.

Exempel:

 BASH_VERSION=4.2.46(2) 

3. KOLUMNER ange nr. kolumner för vår skärm.

Exempel:

 COLUMNS=80 

4. HEM anger hemkatalogen för användaren.

Exempel:

 HOME=/home/jatpoint 

5. LOGGNAMN anger användarnamnet för loggning.

Exempel:

 LOGNAME=javatpoint 

6. OTYP berättar vilken typ av OS.

Exempel:

 OSTYPE=linux-gnu 

7. PWD representerar den aktuella arbetskatalogen.

Exempel:

 PWD=/home/javatpoint 

8. ANVÄNDARNAMN anger namnet på för närvarande inloggad användare.

Exempel:

 USERNAME=javatpoint 

För att känna till listan över dessa variabler i ditt system, skriv kommandona uppsättning, env , och printenv på kommandoradsterminalen enligt följande:

1. Skriva uppsättning kommando.

Produktion:

Bash-variabler

2. Skriva env kommando

Produktion:

Bash-variabler

3. Skriv kommandot printenv

Produktion:

Bash-variabler

Låt oss kalla dessa variabler genom Bash Shell. Följande är de givna stegen:

Steg 1: Skapa ett skript som heter Bash_sdvar och skriv följande kod på Bash Console enligt följande:

 #! /bin/bash # Bash System-defined Variables echo $HOME # Home Directory echo $PWD # current working directory echo $BASH # Bash shell name echo $BASH_VERSION # Bash shell Version echo $LOGNAME # Name of the Login User echo $OSTYPE # Type of OS 

Steg 2. Titta på Bash-konsolen nedan:

Bash-variabler

Steg 3. Spara och kör skriptet. Det kommer att visa utdata som du kan se i figuren nedan.

Produktion:

Bash-variabler

2. Användardefinierade variabler: Dessa variabler skapas och underhålls av användaren. I allmänhet definieras dessa typer av variabler i LOWER_CASES. Det finns ingen strikt regel för att skriva dessa variabler med små bokstäver. Vi kan också skriva dem med stora bokstäver.

Låt oss skapa ett Bash-skript för att definiera dessa variabler. Följ de givna stegen nedan:

Steg 1. Skapa ett skript som heter av bash_yard och skriv följande kod på Bash Console:

 #! /bin/bash # User-Defined Variables name=Peter ROLL_NO=5245325 echo 'The student name is $name and his Roll number is $ROLL_NO.' 

Steg 2. Se koden på Bash Console.

Bash-variabler

Steg 3. Spara och kör skriptet.

Produktion:

Bash-variabler

Arbete med Bash-variabler

Efter att ha en grundläggande demonstration av variabler, låt oss gå vidare för att veta hur de fungerar?

Det finns två åtgärder vi vanligtvis utför för en variabel i Bash enligt nedan:

  • ställa in ett värde för en variabel
  • läsa av värdet för det.

Ett variabelvärde kan ställas in på olika sätt där det vanligaste sättet är att sätta värdet direkt. För att läsa en variabel kan vi placera dess namn (prefix med $-tecken) var som helst i skriptet.

Bash kontrollerar först alla variabelnamn som om de finns i skriptet. Sedan tolkar den varje rad i vårt manus. Efter att ha identifierat varje variabel ersätter den ett variabelnamn med dess tilldelade värde. När allt kommer omkring tolkar/kör den den kodraden och fortsätter denna process för varje kodad rad i vårt skript.

OBS: Båda typerna av variabler i Bash (vi diskuterade) fungerar på terminalen såväl som på Bash-skript. Låt oss se hur de arbetar med terminal och Bash genom ett enkelt exempel:

Exempel: Ring ett användarnamn av XYZ, hans plats där han för närvarande arbetar och versionen av Bash Shell han använder för Bash Scripting.

1. Arbetar på terminalen

Bash-variabler

2. Arbetar på Bash Shell

Se skriptet namngivet av Bash_Var nedan:

Bash-variabler

I den 3rdraden i manuset , deklarerade vi en variabel ANVÄNDARNAMN för att lagra användarnamnet XYZ som dess värde.

I de två sista raderna , har vi skrivit ut det avsedda meddelandet med hjälp av eko kommando.

Det finns två variabler och ett kommando i detta meddelande. Var och en av dem föregås av dollartecknet ($) där:

    ANVÄNDARNAMNär en användardefinierad variabel för att anropa användarnamnet,BASH_VERSIONär systemdefinierad variabel, som skalet kallar sig själv. Den används för att skriva ut versionen av Bash Shell,PWDkommandot används för att skriva ut användarens aktuella plats.

För bättre förståelse, skapa det här skriptet genom att följa den givna koden:

 #! /bin/bash #Bash Variables USER_NAME=XYZ echo Hey there! $USER_NAME is any user currently working on the directory $PWD with Bash Shell Version $BASH_VERSION. 

Det kommer att visa utdata som du kan se i följande bild:

Produktion:

Bash-variabler

Det finns några fler exempel för att öva variabler på både terminal och Bash Shell. Genom att följa regeluppsättning (diskuterat tidigare) har en praxis på variabler enligt följande:

A. Använda kommandoradsterminalen

1. Ställa in variablerna

Bash-variabler

2. Läsa och referera till variablerna

Bash-variabler

3. Ogiltiga variabler

Bash-variabler

4. Kombinera två strängvariabler

Bash-variabler

5. Sammanfoga strängar med variabler

Bash-variabler

OBS: Använd inte enstaka citattecken för att kombinera två variabler och även för sammanlänkning av strängar med variabler. Så att om du sammanfogar strängar genom att omsluta dem i enstaka citattecken, kommer det att vara ett misslyckande att läsa dem som du kan se i bilden nedan:

Bash-variabler

B. Använda Bash Script:

Det är ett exempel på kombinera strängvariablerna.

Bash-variabler

Produktion:

Bash-variabler

Kommandoradsargument

Kommandoradsargument används för att göra ett skript mer dynamiskt genom att skicka indata till koden. Vi skickar dessa argument under körningen av skriptet som följande form:

 ./script_name arg1 arg2 arg3..... 

Det bör inte finnas något mellanslag mellan skriptnamnet och alla godkända argument.

Hur använder man kommandoradsargument?

I ett Bash Shell används de med referens till följande standardparametrar eller specialvariabler.

    Variabler är den väsentliga delen av programmering, eller så kan vi säga att de är andan i ett programmeringsspråk. Variabler anger minnesplatsen genom tecken, numeriska och alfanumeriska. De används för att refereras och manipuleras i ett datorprogram.

    Vilka är variablerna?

    Variabler är behållare som lagrar data eller en användbar information som värdet inuti dem. Nedan är syntaxen för en variabel:

     Variable_name =value 

    En variabel är en kombinerad form av två ord, d.v.s. variera + kan, vilket innebär att dess värde kan ändras och att den kan användas flera gånger.

    Variabel är känd som den tillfälliga lagringen för alla typer av data som heltal, float, char, etc. Ett variabelnamn kan inkludera alfabet, siffror och understreck , och dess namn kan endast startas med alfabet och understreck.

    Obs: Vi kan inte definiera ett variabelnamn som börjar med någon siffra.

    Vad är Bash-variabler?

    Vi kan inte använda bashvariabler utan att ha rätt information ( syntax, datatyper, typer, arbete ) om det, så låt oss gå igenom denna korta handledning för att få en lämplig översikt över Bash-variabler.

    Känn först till syntaxen.

    Syntax:

     Variable_name=value 

    Regler för att definiera bashvariabler:

    1. Prefix variabelnamnet med dollar ($) tecken när du läser eller skriver ut en variabel.
    2. Lämna dollartecknet ($) medan du ställer in en variabel med valfritt värde.
    3. Ett variabelnamn kan vara alfanumeriskt, eller så kan det skrivas med ett understreck (_).
    4. Ett variabelnamn är skiftlägeskänsligt: ​​x och X betraktas som två olika variabler.
    5. variabelnamn kan skrivas antingen med UPPER_CASE eller LOWER_CASE bokstäver eller en blandning av båda som du vill.
    6. En variabel kan placeras var som helst i ett Bash-skript eller på kommandoraden, för vid körning kommer Bash att ersätta den med dess tilldelade värde. Det blev möjligt på grund av att man gjorde substitution innan kommandot kördes.
    7. Det ska inte finnas blanksteg på någon sida av likhetstecknet (=) mellan variabelnamnet och dess värde. Följande är några exempel på Ogiltiga variabler med blanksteg (betecknade med punkter ...) mellan dem enligt nedan:
      var1=...variabel1
      var2...=variabel2
      var3...=...variabel3
    8. Det finns inget behov av att använda några citattecken, varken enkla eller dubbla, för att definiera en variabel med ett enda teckenvärde som t.ex var1=variabel . För att mata in flera ord eller sträng som ett enda objekt i en variabel, använd sedan citattecken för att omsluta ditt innehåll i den variabeln.
      • Enkelt citat ('') hjälper till att behandla varje karaktär.
      • Dubbla citat ('') hjälper till att göra ersättningen.

    Datatyper

    I de formella programmeringsspråken måste du definiera datatypen för valfri variabel vid tidpunkten för variabeldeklarationen. Till exempel:

     int year=2012 char comp_name='jtp' 

    Men i fallet med Bash behöver du inte definiera datatypen för någon variabel vid tidpunkten för variabeldeklarationen. Bash variabler är oskrivet , vilket betyder att bara skriva variabelnamnet genom att tilldela dess värde, så kommer den automatiskt att överväga den datatypen.

    Så att om du tilldelar något numeriskt värde till variabeln, kommer det att fungera som heltal och om du tilldelar ett teckenvärde till variabeln, så blir det String.

     year=2012 comp_name=jtp 

    Använd echo-kommandot, läs dem genom att tilldela $-tecken före deras namn, t.ex

    echo $år
    echo $namn

    Typer av bashvariabler

    Det finns två typer av variabler i ett skal eller vilket UNIX-system som helst.

    1. Systemdefinierade variabler
    2. Användardefinierade variabler

    1. Systemdefinierade variabler: Dessa är de fördefinierade variablerna eftersom de skapas och underhålls av själva operativsystemet LINUX. Deras standardkonvention är att de i allmänhet definieras med versaler, dvs STORA_CASE. Så närhelst du ser en variabel definierad i versaler, är de troligen de systemdefinierade variablerna.

    Dessa är följande systemdefinierade variabler enligt nedan:

    1. BASH representerar skalnamnet.

    Exempel:

     BASH=/usr/bin/bash 

    2. BASH_VERSION anger skalversionen som bash innehåller.

    Exempel:

     BASH_VERSION=4.2.46(2) 

    3. KOLUMNER ange nr. kolumner för vår skärm.

    Exempel:

     COLUMNS=80 

    4. HEM anger hemkatalogen för användaren.

    Exempel:

     HOME=/home/jatpoint 

    5. LOGGNAMN anger användarnamnet för loggning.

    Exempel:

     LOGNAME=javatpoint 

    6. OTYP berättar vilken typ av OS.

    Exempel:

     OSTYPE=linux-gnu 

    7. PWD representerar den aktuella arbetskatalogen.

    Exempel:

     PWD=/home/javatpoint 

    8. ANVÄNDARNAMN anger namnet på för närvarande inloggad användare.

    Exempel:

     USERNAME=javatpoint 

    För att känna till listan över dessa variabler i ditt system, skriv kommandona uppsättning, env , och printenv på kommandoradsterminalen enligt följande:

    1. Skriva uppsättning kommando.

    Produktion:

    Bash-variabler

    2. Skriva env kommando

    Produktion:

    Bash-variabler

    3. Skriv kommandot printenv

    Produktion:

    Bash-variabler

    Låt oss kalla dessa variabler genom Bash Shell. Följande är de givna stegen:

    Steg 1: Skapa ett skript som heter Bash_sdvar och skriv följande kod på Bash Console enligt följande:

     #! /bin/bash # Bash System-defined Variables echo $HOME # Home Directory echo $PWD # current working directory echo $BASH # Bash shell name echo $BASH_VERSION # Bash shell Version echo $LOGNAME # Name of the Login User echo $OSTYPE # Type of OS 

    Steg 2. Titta på Bash-konsolen nedan:

    Bash-variabler

    Steg 3. Spara och kör skriptet. Det kommer att visa utdata som du kan se i figuren nedan.

    Produktion:

    Bash-variabler

    2. Användardefinierade variabler: Dessa variabler skapas och underhålls av användaren. I allmänhet definieras dessa typer av variabler i LOWER_CASES. Det finns ingen strikt regel för att skriva dessa variabler med små bokstäver. Vi kan också skriva dem med stora bokstäver.

    Låt oss skapa ett Bash-skript för att definiera dessa variabler. Följ de givna stegen nedan:

    Steg 1. Skapa ett skript som heter av bash_yard och skriv följande kod på Bash Console:

     #! /bin/bash # User-Defined Variables name=Peter ROLL_NO=5245325 echo 'The student name is $name and his Roll number is $ROLL_NO.' 

    Steg 2. Se koden på Bash Console.

    Bash-variabler

    Steg 3. Spara och kör skriptet.

    Produktion:

    Bash-variabler

    Arbete med Bash-variabler

    Efter att ha en grundläggande demonstration av variabler, låt oss gå vidare för att veta hur de fungerar?

    Det finns två åtgärder vi vanligtvis utför för en variabel i Bash enligt nedan:

    • ställa in ett värde för en variabel
    • läsa av värdet för det.

    Ett variabelvärde kan ställas in på olika sätt där det vanligaste sättet är att sätta värdet direkt. För att läsa en variabel kan vi placera dess namn (prefix med $-tecken) var som helst i skriptet.

    Bash kontrollerar först alla variabelnamn som om de finns i skriptet. Sedan tolkar den varje rad i vårt manus. Efter att ha identifierat varje variabel ersätter den ett variabelnamn med dess tilldelade värde. När allt kommer omkring tolkar/kör den den kodraden och fortsätter denna process för varje kodad rad i vårt skript.

    OBS: Båda typerna av variabler i Bash (vi diskuterade) fungerar på terminalen såväl som på Bash-skript. Låt oss se hur de arbetar med terminal och Bash genom ett enkelt exempel:

    Exempel: Ring ett användarnamn av XYZ, hans plats där han för närvarande arbetar och versionen av Bash Shell han använder för Bash Scripting.

    1. Arbetar på terminalen

    Bash-variabler

    2. Arbetar på Bash Shell

    Se skriptet namngivet av Bash_Var nedan:

    Bash-variabler

    I den 3rdraden i manuset , deklarerade vi en variabel ANVÄNDARNAMN för att lagra användarnamnet XYZ som dess värde.

    I de två sista raderna , har vi skrivit ut det avsedda meddelandet med hjälp av eko kommando.

    Det finns två variabler och ett kommando i detta meddelande. Var och en av dem föregås av dollartecknet ($) där:

      ANVÄNDARNAMNär en användardefinierad variabel för att anropa användarnamnet,BASH_VERSIONär systemdefinierad variabel, som skalet kallar sig själv. Den används för att skriva ut versionen av Bash Shell,PWDkommandot används för att skriva ut användarens aktuella plats.

    För bättre förståelse, skapa det här skriptet genom att följa den givna koden:

     #! /bin/bash #Bash Variables USER_NAME=XYZ echo Hey there! $USER_NAME is any user currently working on the directory $PWD with Bash Shell Version $BASH_VERSION. 

    Det kommer att visa utdata som du kan se i följande bild:

    Produktion:

    Bash-variabler

    Det finns några fler exempel för att öva variabler på både terminal och Bash Shell. Genom att följa regeluppsättning (diskuterat tidigare) har en praxis på variabler enligt följande:

    A. Använda kommandoradsterminalen

    1. Ställa in variablerna

    Bash-variabler

    2. Läsa och referera till variablerna

    Bash-variabler

    3. Ogiltiga variabler

    Bash-variabler

    4. Kombinera två strängvariabler

    Bash-variabler

    5. Sammanfoga strängar med variabler

    Bash-variabler

    OBS: Använd inte enstaka citattecken för att kombinera två variabler och även för sammanlänkning av strängar med variabler. Så att om du sammanfogar strängar genom att omsluta dem i enstaka citattecken, kommer det att vara ett misslyckande att läsa dem som du kan se i bilden nedan:

    Bash-variabler

    B. Använda Bash Script:

    Det är ett exempel på kombinera strängvariablerna.

    Bash-variabler

    Produktion:

    Bash-variabler

    Kommandoradsargument

    Kommandoradsargument används för att göra ett skript mer dynamiskt genom att skicka indata till koden. Vi skickar dessa argument under körningen av skriptet som följande form:

     ./script_name arg1 arg2 arg3..... 

    Det bör inte finnas något mellanslag mellan skriptnamnet och alla godkända argument.

    Hur använder man kommandoradsargument?

    I ett Bash Shell används de med referens till följande standardparametrar eller specialvariabler.

      $0anger namnet på skriptet som ska anropas.$1-$9lagrar namnen på de första 9 argumenten eller kan användas som argumentens positioner.$#anger det totala antalet (antalet) argument som skickas till skriptet.$*lagrar alla kommandoradsargument genom att sammanfoga dem.$@lagrar listan med argument som en array.$?anger process-ID för det aktuella skriptet.$$anger utgångsstatus för det senaste kommandot eller den senaste körningsprocessen.$!visar ID för det senaste bakgrundsjobbet.

    Följande är de två metoderna vi använder för att skicka kommandoradsargument:

    Metod 1: Använd positionsnummer

    Det är det första sättet att komma åt argumenten genom att använda standardparametrarna ($1...$9). Bilden nedan förklarar det:

    Bash-variabler

    Produktion:

    Bash-variabler

    Metod 2: Använd Array.

    Det är det andra sättet att skicka argumenten som en Array. Följ den givna algoritmen för att tillämpa denna metod.

    Steg 1: Skapa ett Bash-skript.

    Steg 2: Deklarera valfritt variabelnamn och tilldela dess värde som $a i följande form:

     variable_name=('$@') 

    Var $@ är standardargumentet som används för att lagra argumenten (vi skickar) som en array.

    Steg 3: Visa argumenten genom att definiera deras arrayindex i följande form:

     ${variable_name[i]} 

    Steg 4: Spara och stäng skriptet.

    Steg 5: Kör skriptet genom att skicka argumenten.

    Se följande program:

    Program:

     #!/bin/bash args=('$@') echo ${args[0]} ${args[1]} ${args[2]} ${args[3]} 

    På Bash Console:

    Bash-variabler

    Produktion:

    Bash-variabler

    Kommandosubstitution

    Enligt Bash Official Documentation

    'Command Substitution tillåter utmatningen av ett kommando för att ersätta själva kommandot. Bash utför expansionen genom att utföra kommandot i en subshell-miljö och ersätta kommandosubstitutionen med kommandots standardutdata, med alla efterföljande rader raderade. Inbäddade nyrader tas inte bort, men de kan tas bort under orddelning.'

    Kommandosubstitution hänvisar till en expansion som Bash utför åt oss. Den tar utdata från Bash-kommandot, lagrar i en variabel (i allmänhet) och visar tillbaka med eko.

    Kommandosubstitution erbjuder dataflexibilitet när det gäller skript och variabeltilldelning. Det är enkelt och lätt att ha en enda kommandoradsutgång. Om utmatningen går över några rader, tas de nya efterföljande raderna bort och hela innehållet i utdata hamnar på en enda rad.

    Se syntaxen för användning:

    Syntax

    Den klassiska formen för att ersätta kommandon i en variabel eller kommandosubstitution är att använda bakåtcitat (`...`), enligt nedan:

     variable_name=`command_name` variable_name=`command_name [option...] argument1 argument2...` variable_name=`/path/to/command` 

    Nu utför vi kommandosubstitution genom att omge kommandona inom parentes (föregås av dollartecknet ($)). Ta en titt:

     variable_name=$(command_name) variable_name=$(command_name [option...] argument1 argument2...) variable_name=$(path/to/command) 

    Så, låt oss göra kommandosubstitution med ett exempel enligt diskussionen.

    I det här exemplet ersätter vi ett enda kommando ls i en variabel. Se terminalen.

    Bash-variabler

    Linje 1: Utan kommandosubstitution utökas utdata i flera rader.

    Rad 2 och 3: Med kommandosubstitution avslutas utmatningen på en enda rad (sparat utrymme genom att ta bort nyligen avslutade linjer).

    Följande är Bash-skriptet för att testa kommandosubstitutionen.

    Program:

     #! /bin/bash # command substitution lsResult=$(ls) echo 'My files are:' $lsResult 

    Se Bash-konsolen:

    Bash-variabler

    Produktion:

    Bash-variabler
    anger namnet på skriptet som ska anropas.-lagrar namnen på de första 9 argumenten eller kan användas som argumentens positioner.$#anger det totala antalet (antalet) argument som skickas till skriptet.$*lagrar alla kommandoradsargument genom att sammanfoga dem.$@lagrar listan med argument som en array.$?anger process-ID för det aktuella skriptet.$$anger utgångsstatus för det senaste kommandot eller den senaste körningsprocessen.$!visar ID för det senaste bakgrundsjobbet.

Följande är de två metoderna vi använder för att skicka kommandoradsargument:

Metod 1: Använd positionsnummer

Det är det första sättet att komma åt argumenten genom att använda standardparametrarna (...). Bilden nedan förklarar det:

Bash-variabler

Produktion:

Bash-variabler

Metod 2: Använd Array.

Det är det andra sättet att skicka argumenten som en Array. Följ den givna algoritmen för att tillämpa denna metod.

Steg 1: Skapa ett Bash-skript.

Steg 2: Deklarera valfritt variabelnamn och tilldela dess värde som $a i följande form:

 variable_name=('$@') 

Var $@ är standardargumentet som används för att lagra argumenten (vi skickar) som en array.

Steg 3: Visa argumenten genom att definiera deras arrayindex i följande form:

 ${variable_name[i]} 

Steg 4: Spara och stäng skriptet.

Steg 5: Kör skriptet genom att skicka argumenten.

Se följande program:

Program:

 #!/bin/bash args=('$@') echo ${args[0]} ${args[1]} ${args[2]} ${args[3]} 

På Bash Console:

Bash-variabler

Produktion:

Bash-variabler

Kommandosubstitution

Enligt Bash Official Documentation

'Command Substitution tillåter utmatningen av ett kommando för att ersätta själva kommandot. Bash utför expansionen genom att utföra kommandot i en subshell-miljö och ersätta kommandosubstitutionen med kommandots standardutdata, med alla efterföljande rader raderade. Inbäddade nyrader tas inte bort, men de kan tas bort under orddelning.'

Kommandosubstitution hänvisar till en expansion som Bash utför åt oss. Den tar utdata från Bash-kommandot, lagrar i en variabel (i allmänhet) och visar tillbaka med eko.

Kommandosubstitution erbjuder dataflexibilitet när det gäller skript och variabeltilldelning. Det är enkelt och lätt att ha en enda kommandoradsutgång. Om utmatningen går över några rader, tas de nya efterföljande raderna bort och hela innehållet i utdata hamnar på en enda rad.

Se syntaxen för användning:

Syntax

Den klassiska formen för att ersätta kommandon i en variabel eller kommandosubstitution är att använda bakåtcitat (`...`), enligt nedan:

 variable_name=`command_name` variable_name=`command_name [option...] argument1 argument2...` variable_name=`/path/to/command` 

Nu utför vi kommandosubstitution genom att omge kommandona inom parentes (föregås av dollartecknet ($)). Ta en titt:

 variable_name=$(command_name) variable_name=$(command_name [option...] argument1 argument2...) variable_name=$(path/to/command) 

Så, låt oss göra kommandosubstitution med ett exempel enligt diskussionen.

I det här exemplet ersätter vi ett enda kommando ls i en variabel. Se terminalen.

Bash-variabler

Linje 1: Utan kommandosubstitution utökas utdata i flera rader.

Rad 2 och 3: Med kommandosubstitution avslutas utmatningen på en enda rad (sparat utrymme genom att ta bort nyligen avslutade linjer).

Följande är Bash-skriptet för att testa kommandosubstitutionen.

Program:

 #! /bin/bash # command substitution lsResult=$(ls) echo 'My files are:' $lsResult 

Se Bash-konsolen:

Bash-variabler

Produktion:

Bash-variabler