logo

Bash-variabler

Variabler er den væsentlige del af programmering, eller vi kan sige, at de er ånden i et programmeringssprog. Variabler angiver hukommelsesplaceringen gennem tegn, numerisk og alfanumerisk. De bruges til at blive refereret og manipuleret i et computerprogram.

Hvad er variablerne?

Variabler er de beholdere, der gemmer data eller en nyttig information som værdien i dem. Nedenfor er syntaksen for en variabel:

 Variable_name =value 

En variabel er en kombineret form af to ord, dvs. variere + stand, hvilket betyder, at dens værdi kan ændres, og den kan bruges flere gange.

ressourceallokeringsgraf

Variabel er kendt som den midlertidige lagring af enhver form for data som heltal, float, char osv. Et variabelnavn kan omfatte alfabeter, cifre og understregning , og dens navn kan kun startes med alfabeter og understregning.

Bemærk: Vi kan ikke definere et variabelnavn, der starter med et ciffer.

Hvad er Bash-variabler?

Vi kan ikke bruge bash-variabler uden at have den rigtige information ( syntaks, datatyper, typer, arbejde ) om det, så lad os gennemgå denne korte tutorial for at få det passende overblik over Bash Variables.

Kend først syntaksen.

Syntaks:

 Variable_name=value 

Regler for definition af bashvariabler:

  1. Præfiks variabelnavnet med dollar ($) tegn, mens du læser eller udskriver en variabel.
  2. Lad være med dollartegnet ($), mens du indstiller en variabel med en hvilken som helst værdi.
  3. Et variabelnavn kan være alfanumerisk, eller det kan skrives med en understregning (_).
  4. Et variabelnavn skelner mellem store og små bogstaver: x og X betragtes som to forskellige variable.
  5. variabelnavn kan skrives enten med STORE_CASE eller LOWER_CASE bogstaver eller en blanding af begge, som du ønsker.
  6. En variabel kan placeres hvor som helst i et Bash Script eller på kommandolinjen, fordi på runtime vil Bash erstatte den med dens tildelte værdi. Det blev muligt på grund af udskiftning, før kommandoen blev kørt.
  7. Der bør ikke være mellemrum på hver side af lighedstegnet (=) mellem variabelnavnet og dens værdi. Følgende er nogle eksempler på Ugyldige variabler med mellemrum (angivet med prikker ...) mellem dem som angivet nedenfor:
    var1=...variabel1
    var2...=variabel2
    var3...=...variabel3
  8. Der er ikke behov for at bruge anførselstegn, hverken enkelt eller dobbelt, for at definere en variabel med enkelttegnsværdi som f.eks var1=variabel . For at indtaste flere ord eller streng som et enkelt element i en variabel, så brug anførselstegn til at omslutte dit indhold i den variabel.
    • Enkelt citat ('') hjælper med at behandle hver karakter.
    • Dobbelt anførselstegn ('') hjælper med at lave udskiftningen.

Datatyper

I de formelle programmeringssprog skal du definere datatypen for enhver variabel på tidspunktet for variabelerklæringen. For eksempel:

 int year=2012 char comp_name='jtp' 

Men i tilfælde af Bash behøver du ikke at definere datatypen for nogen variabel på tidspunktet for variabelerklæringen. Bash-variabler er uskrevet , hvilket betyder, at du bare skal indtaste variabelnavnet ved at tildele dens værdi, og den vil automatisk overveje denne datatype.

Sådan at hvis du tildeler en numerisk værdi til variablen, vil den fungere som heltal, og hvis du tildeler en tegnværdi til variablen, så vil det være String.

 year=2012 comp_name=jtp 

ved at bruge echo-kommandoen, læs dem ved at tildele $-tegn før deres navn, f.eks

ekko $år
ekko $navn

Typer af Bash-variabler

Der er to typer variabler i en shell eller et hvilket som helst UNIX-system.

  1. Systemdefinerede variabler
  2. Brugerdefinerede variabler

1. Systemdefinerede variabler: Disse er de foruddefinerede variabler, da de oprettes og vedligeholdes af LINUX-operativsystemet selv. Deres standardkonvention er, at de generelt er defineret med store bogstaver, dvs. STORE_CASE. Så hver gang du ser en variabel defineret i store bogstaver, er de højst sandsynligt de systemdefinerede variabler.

Disse er følgende systemdefinerede variabler som angivet nedenfor:

1. BASH repræsenterer Shell-navnet.

Eksempel:

 BASH=/usr/bin/bash 

2. BASH_VERSION specificerer den skalversion, som Bash'en har.

Eksempel:

 BASH_VERSION=4.2.46(2) 

3. KOLONNER angiv nr. af kolonner til vores skærm.

Eksempel:

 COLUMNS=80 

4. HJEM angiver hjemmebiblioteket for brugeren.

Eksempel:

 HOME=/home/jatpoint 

5. LOGNAVN angiver logningsbrugernavnet.

Eksempel:

 LOGNAME=javatpoint 

6. OSTYPE fortæller typen af ​​OS.

Eksempel:

 OSTYPE=linux-gnu 

7. PWD repræsenterer den aktuelle arbejdsmappe.

Eksempel:

 PWD=/home/javatpoint 

8. BRUGERNAVN angiver navnet på den aktuelt loggede bruger.

Eksempel:

 USERNAME=javatpoint 

For at kende listen over disse variabler i dit system skal du skrive kommandoerne sæt, env , og printenv på kommandolinjeterminalen som følger:

1. Indtastning af sæt kommando.

Produktion:

Bash-variabler

2. Indtastning af env kommando

Produktion:

Bash-variabler

3. Indtastning af printenv-kommandoen

Produktion:

Bash-variabler

Lad os kalde disse variable gennem Bash Shell. Følgende er de givne trin:

Trin 1: Opret et script navngivet af Bash_sdvar og skriv følgende kode på Bash-konsollen som følger:

 #! /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 

Trin 2. Se på Bash-konsollen nedenfor:

Bash-variabler

Trin 3. Gem og kør scriptet. Det vil vise output, som du kan se i figuren nedenfor.

Produktion:

Bash-variabler

2. Brugerdefinerede variabler: Disse variabler oprettes og vedligeholdes af brugeren. Generelt er disse typer variabler defineret i LOWER_CASES. Der er ikke nogen streng regel for at skrive disse variable med små bogstaver. Vi kan også skrive dem med store bogstaver.

Lad os oprette et Bash Script for at definere disse variable. Følg de givne trin nedenfor:

Trin 1. Opret et script navngivet af bash_yard og skriv følgende kode 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.' 

Trin 2. Se koden på Bash Console.

Bash-variabler

Trin 3. Gem og kør scriptet.

Produktion:

Bash-variabler

Arbejde med Bash-variabler

Efter at have en grundlæggende demonstration af variabler, lad os flytte for at vide, hvordan de virker?

Der er to handlinger, vi normalt udfører for en variabel i Bash som angivet nedenfor:

  • indstille en værdi for en variabel
  • aflæse værdien for det.

En variabel værdi kan indstilles på forskellige måder, hvor den mest almindelige måde er at sætte værdien direkte. For at læse en variabel kan vi placere dens navn (præfiks med $-tegn) hvor som helst i scriptet.

Bash tjekker først alle variabelnavnene, som om de er til stede i scriptet. Så fortolker den hver linje i vores manuskript. Efter at have identificeret hver variabel, erstatter den et variabelnavn med dens tildelte værdi. Når alt kommer til alt, fortolker/kører den den kodelinje og fortsætter denne proces for hver kodede linje i vores script.

BEMÆRK: Begge typer variabler i Bash (vi diskuterede) virker på terminalen såvel som på Bash-scriptet. Lad os se deres arbejde med terminal og Bash gennem et ligetil eksempel:

Eksempel: Kald et brugernavn af XYZ, hans placering, hvor han i øjeblikket arbejder, og den version af Bash Shell, han bruger til Bash Scripting.

1. Arbejder på terminal

Bash-variabler

2. Arbejder på Bash Shell

Se scriptet navngivet af Bash_Var givet nedenfor:

Bash-variabler

I det 3rdlinje i scriptet , vi erklærede en variabel USER_NAME for at gemme brugernavnet XYZ som dens værdi.

I de sidste to linjer , har vi udskrevet den tilsigtede besked ved at bruge ekko kommando.

Der er to variable og en kommando i denne meddelelse. Hver af dem er indledt af dollartegnet ($), hvor:

    USER_NAMEer en brugerdefineret variabel til at kalde brugernavnet,BASH_VERSIONer systemdefineret variabel, som shell kalder sig selv. Det bruges til at udskrive versionen af ​​Bash Shell,PWDkommandoen bruges til at udskrive brugerens aktuelle placering.

For bedre forståelse skal du oprette dette script ved at følge den givne kode:

 #! /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 vil vise output, som du kan se på følgende billede:

Produktion:

Bash-variabler

Der er nogle flere eksempler på at øve variabler på både terminal og Bash Shell. Ved at følge regelsæt (diskuteret før) har en praksis på variabler som følger:

A. Brug af kommandolinjeterminal

1. Indstilling af variablerne

Bash-variabler

2. Læsning og reference til variablerne

Bash-variabler

3. Ugyldige variabler

Bash-variabler

4. Kombination af to strengvariabler

Bash-variabler

5. Sammenkædning af strenge med variable

Bash-variabler

BEMÆRK: Brug ikke enkelte anførselstegn til at kombinere to variable og også til sammenkædning af strenge med variable. Sådan at hvis du sammenkæder strenge ved at omslutte dem i enkelte anførselstegn, så vil det være en fejl at læse dem, som du kan se på billedet nedenfor:

Bash-variabler

B. Brug af Bash Script:

Det er et eksempel på ved at kombinere strengvariablerne.

Bash-variabler

Produktion:

Bash-variabler

Kommandolinjeargumenter

Kommandolinjeargumenter bruges til at gøre et script mere dynamisk ved at sende input til koden. Vi sender disse argumenter under scriptets køretid som følgende form:

 ./script_name arg1 arg2 arg3..... 

Der bør ikke være mellemrum mellem scriptnavnet og alle beståede argumenter.

Hvordan bruger man kommandolinjeargumenter?

I en Bash Shell bruges de med reference til følgende standardparametre eller de specielle variabler.

    Variabler er den væsentlige del af programmering, eller vi kan sige, at de er ånden i et programmeringssprog. Variabler angiver hukommelsesplaceringen gennem tegn, numerisk og alfanumerisk. De bruges til at blive refereret og manipuleret i et computerprogram.

    Hvad er variablerne?

    Variabler er de beholdere, der gemmer data eller en nyttig information som værdien i dem. Nedenfor er syntaksen for en variabel:

     Variable_name =value 

    En variabel er en kombineret form af to ord, dvs. variere + stand, hvilket betyder, at dens værdi kan ændres, og den kan bruges flere gange.

    Variabel er kendt som den midlertidige lagring af enhver form for data som heltal, float, char osv. Et variabelnavn kan omfatte alfabeter, cifre og understregning , og dens navn kan kun startes med alfabeter og understregning.

    Bemærk: Vi kan ikke definere et variabelnavn, der starter med et ciffer.

    Hvad er Bash-variabler?

    Vi kan ikke bruge bash-variabler uden at have den rigtige information ( syntaks, datatyper, typer, arbejde ) om det, så lad os gennemgå denne korte tutorial for at få det passende overblik over Bash Variables.

    Kend først syntaksen.

    Syntaks:

     Variable_name=value 

    Regler for definition af bashvariabler:

    1. Præfiks variabelnavnet med dollar ($) tegn, mens du læser eller udskriver en variabel.
    2. Lad være med dollartegnet ($), mens du indstiller en variabel med en hvilken som helst værdi.
    3. Et variabelnavn kan være alfanumerisk, eller det kan skrives med en understregning (_).
    4. Et variabelnavn skelner mellem store og små bogstaver: x og X betragtes som to forskellige variable.
    5. variabelnavn kan skrives enten med STORE_CASE eller LOWER_CASE bogstaver eller en blanding af begge, som du ønsker.
    6. En variabel kan placeres hvor som helst i et Bash Script eller på kommandolinjen, fordi på runtime vil Bash erstatte den med dens tildelte værdi. Det blev muligt på grund af udskiftning, før kommandoen blev kørt.
    7. Der bør ikke være mellemrum på hver side af lighedstegnet (=) mellem variabelnavnet og dens værdi. Følgende er nogle eksempler på Ugyldige variabler med mellemrum (angivet med prikker ...) mellem dem som angivet nedenfor:
      var1=...variabel1
      var2...=variabel2
      var3...=...variabel3
    8. Der er ikke behov for at bruge anførselstegn, hverken enkelt eller dobbelt, for at definere en variabel med enkelttegnsværdi som f.eks var1=variabel . For at indtaste flere ord eller streng som et enkelt element i en variabel, så brug anførselstegn til at omslutte dit indhold i den variabel.
      • Enkelt citat ('') hjælper med at behandle hver karakter.
      • Dobbelt anførselstegn ('') hjælper med at lave udskiftningen.

    Datatyper

    I de formelle programmeringssprog skal du definere datatypen for enhver variabel på tidspunktet for variabelerklæringen. For eksempel:

     int year=2012 char comp_name='jtp' 

    Men i tilfælde af Bash behøver du ikke at definere datatypen for nogen variabel på tidspunktet for variabelerklæringen. Bash-variabler er uskrevet , hvilket betyder, at du bare skal indtaste variabelnavnet ved at tildele dens værdi, og den vil automatisk overveje denne datatype.

    Sådan at hvis du tildeler en numerisk værdi til variablen, vil den fungere som heltal, og hvis du tildeler en tegnværdi til variablen, så vil det være String.

     year=2012 comp_name=jtp 

    ved at bruge echo-kommandoen, læs dem ved at tildele $-tegn før deres navn, f.eks

    ekko $år
    ekko $navn

    Typer af Bash-variabler

    Der er to typer variabler i en shell eller et hvilket som helst UNIX-system.

    1. Systemdefinerede variabler
    2. Brugerdefinerede variabler

    1. Systemdefinerede variabler: Disse er de foruddefinerede variabler, da de oprettes og vedligeholdes af LINUX-operativsystemet selv. Deres standardkonvention er, at de generelt er defineret med store bogstaver, dvs. STORE_CASE. Så hver gang du ser en variabel defineret i store bogstaver, er de højst sandsynligt de systemdefinerede variabler.

    Disse er følgende systemdefinerede variabler som angivet nedenfor:

    1. BASH repræsenterer Shell-navnet.

    Eksempel:

     BASH=/usr/bin/bash 

    2. BASH_VERSION specificerer den skalversion, som Bash'en har.

    Eksempel:

     BASH_VERSION=4.2.46(2) 

    3. KOLONNER angiv nr. af kolonner til vores skærm.

    Eksempel:

     COLUMNS=80 

    4. HJEM angiver hjemmebiblioteket for brugeren.

    Eksempel:

     HOME=/home/jatpoint 

    5. LOGNAVN angiver logningsbrugernavnet.

    Eksempel:

     LOGNAME=javatpoint 

    6. OSTYPE fortæller typen af ​​OS.

    Eksempel:

     OSTYPE=linux-gnu 

    7. PWD repræsenterer den aktuelle arbejdsmappe.

    Eksempel:

     PWD=/home/javatpoint 

    8. BRUGERNAVN angiver navnet på den aktuelt loggede bruger.

    Eksempel:

     USERNAME=javatpoint 

    For at kende listen over disse variabler i dit system skal du skrive kommandoerne sæt, env , og printenv på kommandolinjeterminalen som følger:

    1. Indtastning af sæt kommando.

    Produktion:

    Bash-variabler

    2. Indtastning af env kommando

    Produktion:

    Bash-variabler

    3. Indtastning af printenv-kommandoen

    Produktion:

    Bash-variabler

    Lad os kalde disse variable gennem Bash Shell. Følgende er de givne trin:

    Trin 1: Opret et script navngivet af Bash_sdvar og skriv følgende kode på Bash-konsollen som følger:

     #! /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 

    Trin 2. Se på Bash-konsollen nedenfor:

    Bash-variabler

    Trin 3. Gem og kør scriptet. Det vil vise output, som du kan se i figuren nedenfor.

    Produktion:

    Bash-variabler

    2. Brugerdefinerede variabler: Disse variabler oprettes og vedligeholdes af brugeren. Generelt er disse typer variabler defineret i LOWER_CASES. Der er ikke nogen streng regel for at skrive disse variable med små bogstaver. Vi kan også skrive dem med store bogstaver.

    Lad os oprette et Bash Script for at definere disse variable. Følg de givne trin nedenfor:

    Trin 1. Opret et script navngivet af bash_yard og skriv følgende kode 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.' 

    Trin 2. Se koden på Bash Console.

    Bash-variabler

    Trin 3. Gem og kør scriptet.

    Produktion:

    Bash-variabler

    Arbejde med Bash-variabler

    Efter at have en grundlæggende demonstration af variabler, lad os flytte for at vide, hvordan de virker?

    Der er to handlinger, vi normalt udfører for en variabel i Bash som angivet nedenfor:

    • indstille en værdi for en variabel
    • aflæse værdien for det.

    En variabel værdi kan indstilles på forskellige måder, hvor den mest almindelige måde er at sætte værdien direkte. For at læse en variabel kan vi placere dens navn (præfiks med $-tegn) hvor som helst i scriptet.

    Bash tjekker først alle variabelnavnene, som om de er til stede i scriptet. Så fortolker den hver linje i vores manuskript. Efter at have identificeret hver variabel, erstatter den et variabelnavn med dens tildelte værdi. Når alt kommer til alt, fortolker/kører den den kodelinje og fortsætter denne proces for hver kodede linje i vores script.

    BEMÆRK: Begge typer variabler i Bash (vi diskuterede) virker på terminalen såvel som på Bash-scriptet. Lad os se deres arbejde med terminal og Bash gennem et ligetil eksempel:

    Eksempel: Kald et brugernavn af XYZ, hans placering, hvor han i øjeblikket arbejder, og den version af Bash Shell, han bruger til Bash Scripting.

    1. Arbejder på terminal

    Bash-variabler

    2. Arbejder på Bash Shell

    Se scriptet navngivet af Bash_Var givet nedenfor:

    Bash-variabler

    I det 3rdlinje i scriptet , vi erklærede en variabel USER_NAME for at gemme brugernavnet XYZ som dens værdi.

    I de sidste to linjer , har vi udskrevet den tilsigtede besked ved at bruge ekko kommando.

    Der er to variable og en kommando i denne meddelelse. Hver af dem er indledt af dollartegnet ($), hvor:

      USER_NAMEer en brugerdefineret variabel til at kalde brugernavnet,BASH_VERSIONer systemdefineret variabel, som shell kalder sig selv. Det bruges til at udskrive versionen af ​​Bash Shell,PWDkommandoen bruges til at udskrive brugerens aktuelle placering.

    For bedre forståelse skal du oprette dette script ved at følge den givne kode:

     #! /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 vil vise output, som du kan se på følgende billede:

    Produktion:

    Bash-variabler

    Der er nogle flere eksempler på at øve variabler på både terminal og Bash Shell. Ved at følge regelsæt (diskuteret før) har en praksis på variabler som følger:

    A. Brug af kommandolinjeterminal

    1. Indstilling af variablerne

    Bash-variabler

    2. Læsning og reference til variablerne

    Bash-variabler

    3. Ugyldige variabler

    Bash-variabler

    4. Kombination af to strengvariabler

    Bash-variabler

    5. Sammenkædning af strenge med variable

    Bash-variabler

    BEMÆRK: Brug ikke enkelte anførselstegn til at kombinere to variable og også til sammenkædning af strenge med variable. Sådan at hvis du sammenkæder strenge ved at omslutte dem i enkelte anførselstegn, så vil det være en fejl at læse dem, som du kan se på billedet nedenfor:

    Bash-variabler

    B. Brug af Bash Script:

    Det er et eksempel på ved at kombinere strengvariablerne.

    Bash-variabler

    Produktion:

    Bash-variabler

    Kommandolinjeargumenter

    Kommandolinjeargumenter bruges til at gøre et script mere dynamisk ved at sende input til koden. Vi sender disse argumenter under scriptets køretid som følgende form:

     ./script_name arg1 arg2 arg3..... 

    Der bør ikke være mellemrum mellem scriptnavnet og alle beståede argumenter.

    Hvordan bruger man kommandolinjeargumenter?

    I en Bash Shell bruges de med reference til følgende standardparametre eller de specielle variabler.

      $0angiver navnet på det script, der skal startes.$1-$9gemmer navnene på de første 9 argumenter eller kan bruges som argumenternes positioner.$#angiver det samlede antal (antal) argumenter, der er sendt til scriptet.$*gemmer alle kommandolinjeargumenterne ved at forbinde dem.$@gemmer listen over argumenter som en matrix.$?angiver proces-id'et for det aktuelle script.$$angiver afslutningsstatus for den sidste kommando eller den seneste udførelsesproces.$!viser ID for det sidste baggrundsjob.

    Følgende er de to metoder, vi bruger til at sende kommandolinjeargumenter:

    Metode 1: Brug af positionsnummer

    Det er den første måde at få adgang til argumenterne ved at bruge standardparametrene ($1...$9). Nedenstående billede forklarer det:

    Bash-variabler

    Produktion:

    Bash-variabler

    Metode 2: Brug af Array.

    Det er den anden måde at videregive argumenterne som et array. Følg den givne algoritme for at anvende denne metode.

    Trin 1: Opret et Bash-script.

    Trin 2: Erklær ethvert variabelnavn og tildel dens værdi som $a i følgende form:

     variable_name=('$@') 

    Hvor $@ er standardargumentet, som bruges til at gemme argumenterne (vi sender) som et array.

    Trin 3: Vis argumenterne ved at definere deres matrixindeks i følgende form:

     ${variable_name[i]} 

    Trin 4: Gem og luk scriptet.

    Trin 5: Udfør scriptet ved at sende argumenterne.

    Se følgende program:

    Program:

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

    På Bash-konsollen:

    Bash-variabler

    Produktion:

    Bash-variabler

    Kommandoerstatning

    Ifølge Bash Official Documentation

    'Command Substitution tillader output af en kommando for at erstatte selve kommandoen. Bash udfører udvidelsen ved at udføre kommandoen i et subshell-miljø og erstatte kommandosubstitutionen med kommandoens standardoutput, med eventuelle efterfølgende newlines slettet. Indlejrede nylinjer slettes ikke, men de kan blive fjernet under ordopdeling.'

    Kommandosubstitution refererer til en udvidelse, som Bash udfører for os. Det tager output fra Bash-kommandoen, gemmer i en variabel (generelt) og viser tilbage med ekko.

    Kommandoerstatning tilbyder datafleksibilitet med hensyn til scripting og variabeltildeling. Det er enkelt og nemt at have en enkelt kommandolinje-output. I tilfælde af, at outputtet går over et par linjer, så fjernes de nye efterfølgende linjer, og det fulde indhold af output ender på en enkelt linje.

    Se syntaksen for brug:

    Syntaks

    Den klassiske form for erstatning af kommandoer i en variabel eller kommandosubstitution er at bruge tilbageanførselstegn (`...`), som angivet nedenfor:

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

    Nu udfører vi kommandoerstatning ved at omslutte kommandoerne inden for parentes (forud af dollartegnet ($)). Tag et kig:

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

    Så lad os lave kommandoerstatning med et eksempel i henhold til diskussionen.

    I dette eksempel erstatter vi enkelt kommando ls i en variabel. Se terminalen.

    Bash-variabler

    Linje 1: Uden kommandosubstitution udvides outputtet i flere linjer.

    Linje 2 og 3: Med kommandoerstatning afsluttes output på en enkelt linje (sparet plads ved at fjerne nyligt slæbte linjer).

    Følgende er Bash-scriptet til at teste kommandoerstatningen.

    Program:

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

    Se Bash-konsollen:

    Bash-variabler

    Produktion:

    Bash-variabler
    angiver navnet på det script, der skal startes.-gemmer navnene på de første 9 argumenter eller kan bruges som argumenternes positioner.$#angiver det samlede antal (antal) argumenter, der er sendt til scriptet.$*gemmer alle kommandolinjeargumenterne ved at forbinde dem.$@gemmer listen over argumenter som en matrix.$?angiver proces-id'et for det aktuelle script.$$angiver afslutningsstatus for den sidste kommando eller den seneste udførelsesproces.$!viser ID for det sidste baggrundsjob.

Følgende er de to metoder, vi bruger til at sende kommandolinjeargumenter:

Metode 1: Brug af positionsnummer

Det er den første måde at få adgang til argumenterne ved at bruge standardparametrene (...). Nedenstående billede forklarer det:

Bash-variabler

Produktion:

Bash-variabler

Metode 2: Brug af Array.

Det er den anden måde at videregive argumenterne som et array. Følg den givne algoritme for at anvende denne metode.

Trin 1: Opret et Bash-script.

Trin 2: Erklær ethvert variabelnavn og tildel dens værdi som $a i følgende form:

 variable_name=('$@') 

Hvor $@ er standardargumentet, som bruges til at gemme argumenterne (vi sender) som et array.

Trin 3: Vis argumenterne ved at definere deres matrixindeks i følgende form:

 ${variable_name[i]} 

Trin 4: Gem og luk scriptet.

Trin 5: Udfør scriptet ved at sende argumenterne.

Se følgende program:

Program:

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

På Bash-konsollen:

Bash-variabler

Produktion:

Bash-variabler

Kommandoerstatning

Ifølge Bash Official Documentation

'Command Substitution tillader output af en kommando for at erstatte selve kommandoen. Bash udfører udvidelsen ved at udføre kommandoen i et subshell-miljø og erstatte kommandosubstitutionen med kommandoens standardoutput, med eventuelle efterfølgende newlines slettet. Indlejrede nylinjer slettes ikke, men de kan blive fjernet under ordopdeling.'

Kommandosubstitution refererer til en udvidelse, som Bash udfører for os. Det tager output fra Bash-kommandoen, gemmer i en variabel (generelt) og viser tilbage med ekko.

Kommandoerstatning tilbyder datafleksibilitet med hensyn til scripting og variabeltildeling. Det er enkelt og nemt at have en enkelt kommandolinje-output. I tilfælde af, at outputtet går over et par linjer, så fjernes de nye efterfølgende linjer, og det fulde indhold af output ender på en enkelt linje.

Se syntaksen for brug:

Syntaks

Den klassiske form for erstatning af kommandoer i en variabel eller kommandosubstitution er at bruge tilbageanførselstegn (`...`), som angivet nedenfor:

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

Nu udfører vi kommandoerstatning ved at omslutte kommandoerne inden for parentes (forud af dollartegnet ($)). Tag et kig:

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

Så lad os lave kommandoerstatning med et eksempel i henhold til diskussionen.

I dette eksempel erstatter vi enkelt kommando ls i en variabel. Se terminalen.

Bash-variabler

Linje 1: Uden kommandosubstitution udvides outputtet i flere linjer.

Linje 2 og 3: Med kommandoerstatning afsluttes output på en enkelt linje (sparet plads ved at fjerne nyligt slæbte linjer).

Følgende er Bash-scriptet til at teste kommandoerstatningen.

Program:

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

Se Bash-konsollen:

Bash-variabler

Produktion:

Bash-variabler