Bash Hur man utför ett kommando i en variabel?

Bash How Execute Command Variable



Bash -skript kan skapas på en mängd olika sätt och de flesta av oss är bekanta med att köra de enkla kommandona i ett Bash -skript. Dessa kommandon kan emellertid också inkapslas inom variablerna i Bash. Denna process är känd som kommandosubstitution och den används vanligtvis för att lagra utdata från ett kommando i en variabel så att du inte behöver köra kommandot uttryckligen om och om igen snarare kan du helt enkelt komma åt variabeln för att få utmatningen av det kommandot när du vill. I den här artikeln kommer vi att visa dig hur detta kan göras.

Obs! Alla scenarier som visas nedan har utförts på Ubuntu 20.04. De kommer dock att fungera exakt på samma sätt med alla andra smaker av Linux också.







Metod för att utföra ett kommando i en variabel i Bash:

För att demonstrera metoden för att utföra ett kommando i en variabel i Bash kommer vi att presentera tre olika scenarier som är följande:



Utföra ekokommandot lagrat i en variabel:

Detta är det enklaste scenariot där vårt mål är att utföra ekokommandot som lagras i en variabel. För att få det att hända måste du följa stegen som nämns nedan:



Steg 1: Skapa ett Bash -skript:

Du måste skapa ett Bash -skript i din hemmapp som du behöver klicka på ikonen Filhanterare som du kan se från följande bild:





Hitta nu något utrymme i din hemmapp och högerklicka på den för att starta en meny. Välj alternativet Nytt dokument från den här menyn och välj sedan alternativet Töm dokument från menyn underkaskad. Om du gör detta skapas ett nytt dokument i din hemmapp. Byt namn på detta nyskapade dokument med valfritt namn, följt av .sh -tillägget. I vårt fall har vi kallat det för CommandVar.sh.



För att skriva ett Bash -skript i den här filen, dubbelklicka på det för att öppna det och skriv sedan in skriptet som visas på bilden nedan i din Bash -fil. Här visar den första raden i skriptet, dvs #!/Bin/bash att den här filen faktiskt är en Bash -fil. Sedan har vi skapat en variabel med namnet test och har tilldelat värdet $ (eko Hej!). När du vill lagra kommandot i en variabel måste du skriva det kommandot som föregås av en $ -symbol. I det här fallet ville vi lagra echo -kommandot i testvariabeln så vi har helt enkelt skrivit echo -kommandot följt av ett slumpmässigt meddelande och har lagt det i runda parenteser och placerat en $ -symbol före det. Så nu, om vi vill utföra detta ekokommando, måste vi komma åt testvariabeln. För att verifiera om ekokommandot som är lagrat i testvariabeln kan utföras framgångsrikt eller inte, har vi skrivit ut testvariabelns utmatning på terminalen genom att använda ett annat ekokommando. När du har skrivit detta skript måste du spara filen och stänga den.

Steg # 2: Körning av Bash -skriptet via terminalen:

Nu måste du köra detta skript via terminalen. Så öppna terminalen i Ubuntu 20.04 och skriv sedan följande kommando i den:

våldsamt slagCommandVar.sh

När du trycker på Enter -tangenten för att utföra detta kommando, kommer du att kunna se följande utdata på din terminal. Här är den markerade delen av utdata utsignalen från ekokommandot som lagrades i testvariabeln.

Exekvera kommandot seq lagrat i en variabel:

I det här scenariot kommer vi att skriva ut en sekvens av siffror med hjälp av kommandot seq lagrat i en variabel. För att få det att hända ändrar vi Bash -skriptet som skapats ovan genom att utföra följande steg:

Steg 1: Ändra Bash Script Skapat ovan:

Öppna Bash -filen som du har skapat i metoden ovan och skriv följande skript i den. Här har vi skapat en variabel med namnet sekvens. Vårt mål är att skriva ut siffrorna från 1 till 10 medan vi använder kommandot seq. För att göra det har vi tilldelat värdet $ (sek 1 10) till sekvensvariabeln. Du kan också ange andra valfria nummer om du vill. Det första talet efter kommandot seq indikerar den nedre gränsen för sekvensen medan det andra talet hänvisar till den övre gränsen. När du har skrivit detta skript sparar du filen och stänger den.

Steg 2: Kör det modifierade basskriptet via terminalen:

Kör nu ditt Bash -skript på samma sätt som förklarat ovan och du kommer att kunna se den angivna sekvensen på din terminal som visas på bilden nedan:

Utföra 'pwd' kommando lagrat i en variabel:

Du kan också skriva ut din arbetskatalog genom att använda kommandot pwd lagrat i en variabel. För att demonstrera detta kommer vi att ändra Bash -skriptet som skapats ovan ännu en gång genom att följa stegen som nämns nedan:

Steg 1: Ändra Bash Script Skapat ovan:

Öppna Bash -filen som du just har ändrat och skriv sedan in skriptet som visas i följande bild i den. I detta skript har vi skapat en variabel som heter working_directory och har tilldelat värdet $ (pwd). Kommandot pwd lagrar helt enkelt sin utdata, dvs. den nuvarande arbetskatalogen i variabeln working_directory. För att säkerställa om pwd -kommandot har körts korrekt eller inte har vi skrivit ut värdet på variabeln working_directory på terminalen med hjälp av kommandot echo. Spara nu den här filen och stäng den sedan efter att ha skrivit in det modifierade Bash -skriptet i den.

Steg 2: Kör det modifierade basskriptet via terminalen:

Kör nu detta Bash -skript på samma sätt som förklarat ovan. Utdata från detta Bash -skript visar dig den aktuella arbetskatalogen. Den markerade delen av utdata är faktiskt utdata från pwd -kommandot.

Slutsats:

Den här artikeln ger en mycket bra uppfattning om hur du kan utföra ett kommando som är lagrat i en variabel i Bash och kan få samma utmatning som du skulle ha fått om du körde kommandot oberoende.