Bash Hvordan udfører man en kommando i en variabel?

Bash How Execute Command Variable



Bash -scripts kan oprettes på en række forskellige måder, og de fleste af os er bekendt med at udføre de enkle kommandoer i et Bash -script. Disse kommandoer kan imidlertid også indkapsles inden for variablerne i Bash. Denne proces er kendt som kommandosubstitution, og den bruges generelt til at gemme output fra en kommando i en variabel, så du ikke behøver at køre denne kommando eksplicit igen og igen, du kan simpelthen få adgang til variablen for at få output fra den kommando når du ønsker. I denne artikel vil vi vise dig, hvordan dette kan gøres.

Bemærk: Alle de scenarier, der er vist nedenfor, er udført på Ubuntu 20.04. Men de fungerer også nøjagtigt på samme måde med enhver anden smag af Linux.







Metode til at udføre en kommando i en variabel i Bash:

For at demonstrere metoden til at udføre en kommando i en variabel i Bash, vil vi præsentere dig for tre forskellige scenarier, der er som følger:



Udførelse af ekkokommandoen gemt i en variabel:

Dette er det enkleste scenario, hvor vores mål er at udføre ekkokommandoen, der er gemt i en variabel. For at få det til at ske skal du følge den række trin, der er nævnt nedenfor:



Trin 1: Oprettelse af et Bash -script:

Du skal oprette et Bash -script i din hjemmemappe, som du skal klikke på ikonet Filhåndtering, som du kan se fra følgende billede:





Find nu plads i din hjemmemappe, og højreklik på den for at starte en menu. Vælg indstillingen Nyt dokument fra denne menu, og vælg derefter indstillingen Tom dokument fra undermenuen. Hvis du gør dette, opretter du et nyt dokument i din hjemmemappe. Omdøb nu dette nyoprettede dokument med ethvert navn efter eget valg efterfulgt af .sh -udvidelsen. I vores tilfælde har vi navngivet det som CommandVar.sh.



For at skrive et Bash -script i denne fil skal du dobbeltklikke på det for at åbne det og derefter skrive scriptet vist på billedet herunder i din Bash -fil. Her viser den første linje i scriptet, dvs. #!/Bin/bash, at denne fil faktisk er en Bash -fil. Så har vi oprettet en variabel med navnet test og har tildelt den værdien $ (ekko Hej!). Når du vil gemme kommandoen i en variabel, skal du skrive kommandoen forud for et $ -symbol. I dette tilfælde ville vi gemme ekkokommandoen i testvariablen, så vi har simpelthen indtastet ekkokommandoen efterfulgt af en tilfældig besked og har lukket den i runde parenteser og placeret et $ -symbol foran den. Så nu, hvis vi vil udføre denne ekkokommando, bliver vi nødt til at få adgang til testvariablen. For at kontrollere, om ekkokommandoen, der er gemt i testvariablen, kan udføres med succes eller ej, har vi udskrevet output fra testvariablen på terminalen ved at bruge en anden ekkokommando. Når du har skrevet dette script, skal du gemme din fil og lukke den.

Trin # 2: Udførelse af Bash Script via terminalen:

Nu skal du udføre dette script via terminalen. Så åbn terminalen i Ubuntu 20.04 og skriv derefter følgende kommando i den:

bashCommandVar.sh

Når du trykker på Enter -tasten for at udføre denne kommando, vil du kunne se følgende output på din terminal. Her er den fremhævede del af output output fra ekkokommandoen, der blev gemt i testvariablen.

Udførelse af seq -kommandoen gemt i en variabel:

I dette scenario vil vi udskrive en række med tal ved hjælp af kommandoen seq, der er gemt i en variabel. For at få det til at ske, vil vi ændre Bash -scriptet, der er oprettet ovenfor, ved at udføre følgende trin:

Trin 1: Ændring af Bash Script Oprettet ovenfor:

Åbn den Bash -fil, du har oprettet i metoden ovenfor, og skriv følgende script i den. Her har vi oprettet en variabel med navnet sekvens. Vores mål er at udskrive tallene fra 1 til 10, mens vi bruger kommandoen seq. For at gøre det har vi tildelt værdien $ (seq 1 10) til sekvensvariablen. Du kan også angive et hvilket som helst andet nummerinterval efter eget valg. Det første tal efter kommandoen seq angiver den nedre grænse for sekvensen, mens det andet tal refererer til den øvre grænse. Når du har skrevet dette script, skal du gemme din fil og lukke den.

Trin # 2: Udførelse af det ændrede Bash -script via terminalen:

Udfør nu dit Bash -script på samme måde som forklaret ovenfor, og du vil kunne se den angivne sekvens på din terminal som vist på billedet herunder:

Udførelse af 'pwd' kommando gemt i en variabel:

Du kan også udskrive dit arbejdskatalog ved at bruge kommandoen pwd, der er gemt i en variabel. For at demonstrere dette ændrer vi Bash -scriptet, der er oprettet ovenfor endnu en gang ved at følge trinene nedenfor:

Trin 1: Ændring af Bash Script Oprettet ovenfor:

Åbn den Bash -fil, du lige har ændret, og indtast derefter scriptet vist på følgende billede i den. I dette script har vi oprettet en variabel med navnet working_directory og har tildelt den værdien $ (pwd). Pwd -kommandoen gemmer ganske enkelt sit output, dvs. det aktuelle arbejdskatalog i variablen working_directory. For at sikre, om pwd -kommandoen er korrekt udført eller ej, har vi udskrevet værdien af ​​variablen working_directory på terminalen ved hjælp af kommandoen echo. Gem nu denne fil, og luk den efter at have skrevet det ændrede Bash -script i den.

Trin # 2: Udførelse af det ændrede Bash -script via terminalen:

Udfør nu dette Bash -script på samme måde som forklaret ovenfor. Outputtet af dette Bash -script viser dig det aktuelle arbejdskatalog. Den fremhævede del af output er faktisk output fra pwd -kommandoen.

Konklusion:

Denne artikel giver en meget god ide om, hvordan du kan udføre en kommando, der er gemt i en variabel i Bash og kan få det samme output, som du ville have fået, hvis du kørte kommandoen uafhængigt.