Bash como executar um comando em uma variável?

Bash como executar um comando em uma variável?
Os scripts bash podem ser criados de várias maneiras diferentes e a maioria de nós está familiarizada com a execução dos comandos simples dentro de um script bash. No entanto, esses comandos também podem ser encapsulados dentro das variáveis ​​em Bash. Esse processo é conhecido como substituição de comando e geralmente é usado para armazenar a saída de um comando em uma variável, para que você não precise executar esse comando explicitamente repetidamente quando você quiser. Neste artigo, mostraremos como isso pode ser feito.

Nota: Todos os cenários demonstrados abaixo foram realizados no Ubuntu 20.04. No entanto, eles funcionarão exatamente da mesma maneira com qualquer outro sabor do Linux.

Método de executar um comando em uma variável no bash:

Para demonstrar o método de executar um comando em uma variável no Bash, apresentaremos a você três cenários diferentes que são os seguintes:

Executando o comando "Echo" armazenado em uma variável:

Este é o cenário mais simples em que nosso objetivo é executar o comando de eco que é armazenado em uma variável. Para que isso aconteça, você terá que seguir a série de etapas mencionadas abaixo:

Etapa 1: Criando um script de bash:

Você precisa criar um script bash em sua pasta doméstico para a qual você precisa clicar no ícone do gerenciador de arquivos, como pode ver na imagem a seguir:

Agora encontre qualquer espaço na sua pasta doméstico e clique com o botão direito do mouse para iniciar um menu. Selecione a nova opção de documento neste menu e escolha a opção de documento vazia no menu sub-casscadador. Fazer isso criará um novo documento em sua pasta doméstico. Agora renomeie este documento recém -criado com qualquer nome de sua escolha, seguido pelo .Extensão SH. No nosso caso, nomeamos isso como comando.sh.

Para escrever um script bash neste arquivo, clique duas vezes nele para abri -lo e depois digite o script mostrado na imagem abaixo no seu arquivo Bash. Aqui, a primeira linha do script eu.e. “#!/bin/bash ”mostra que esse arquivo é de fato um arquivo bash. Em seguida, criamos uma variável chamada "teste" e atribuímos o valor "$ (echo" Olá!”)”. Sempre que você quiser armazenar o comando em uma variável, você deve digitar esse comando precedido por um símbolo "$". Nesse caso, queríamos armazenar o comando "Echo" na variável "teste", então simplesmente digitamos o comando "Echo", seguido de uma mensagem aleatória e a encerramos entre colchetes e colocamos um símbolo "$" antes isto. Então agora, se queremos executar este comando "echo", teremos que acessar a variável "teste". Portanto, para verificar se o comando "eco" armazenado na variável "teste" pode ser executado ou não com sucesso, imprimimos a saída da variável "teste" no terminal usando outro comando "echo". Depois de digitar este script, você precisa salvar seu arquivo e fechar -o.

Etapa 2: executando o script Bash através do terminal:

Agora você tem que executar este script através do terminal. Então, abra o terminal no Ubuntu 20.04 e depois digite o seguinte comando nele:

Bash CommandVar.sh

Quando você pressionar a tecla Enter para executar este comando, você poderá ver a seguinte saída no seu terminal. Aqui, a parte destacada da saída é a saída do comando "eco" que foi armazenado na variável "teste".

Executando o comando "SEQ" armazenado em uma variável:

Nesse cenário, imprimiremos uma sequência de números usando o comando "seq" armazenado em uma variável. Para fazer com que isso aconteça, modificaremos o script bash criado acima, executando as seguintes etapas:

Etapa 1: Modificando o script Bash criado acima:

Abra o arquivo bash que você criou no método acima e digite o seguinte script nele. Aqui, criamos uma variável chamada "Sequência". Nosso objetivo é imprimir os números de 1 a 10 enquanto estiver usando o comando "seq". Para fazer isso, atribuímos o valor "$ (seq 1 10)" à variável "Sequência". Você também pode especificar qualquer outro intervalo de números de sua escolha, se quiser. O primeiro número após o comando "seq" indica o limite inferior da sequência, enquanto o segundo número se refere ao limite superior. Depois de digitar este script, salve seu arquivo e feche -o.

Etapa 2: executando o script bash modificado através do terminal:

Agora execute seu script bash da mesma maneira que explicou acima e você poderá ver a sequência especificada no seu terminal, como mostrado na imagem abaixo:

Execução do comando 'PWD' armazenado em uma variável:

Você também pode imprimir seu diretório de trabalho usando o comando "PWD" armazenado em uma variável. Para demonstrar isso, modificaremos o script Bash criado acima mais uma vez, seguindo as etapas mencionadas abaixo:

Etapa 1: Modificando o script Bash criado acima:

Abra o arquivo Bash que você acabou de modificar e digite o script mostrado na seguinte imagem. Neste script, criamos uma variável chamada "Working_Directory" e atribuímos o valor "$ (PWD)". O comando "PWD" simplesmente armazenará sua saída i.e. o diretório de trabalho atual na variável "Working_Directory". Para garantir se o comando "PWD" foi executado corretamente ou não, imprimimos o valor da variável "Working_Directory" no terminal usando o comando "echo". Agora salve este arquivo e feche -o depois de digitar o script de bash modificado nele.

Etapa 2: executando o script bash modificado através do terminal:

Agora execute este script de bash da mesma maneira que explicou acima. A saída deste script Bash mostrará o diretório de trabalho atual. A parte destacada da saída é de fato, a saída do comando “PWD”.

Conclusão:

Este artigo fornece uma idéia muito boa de como você pode executar um comando armazenado dentro de uma variável no Bash e pode obter a mesma saída que teria recebido se executasse o comando de forma independente.