GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo almacenar un comando de Linux como una variable en el script de Shell

Shell scripting se usa bastante popularmente para automatizar cosas en Linux. No solo se utiliza para fines de administración de sistemas y servidores, sino también por parte de los usuarios habituales de Linux para automatizar el día a día en sus sistemas.

Un script de shell no es más que una secuencia de comandos; que un intérprete de línea de comandos (por ejemplo, Bash , Zsh ) se ejecutará. Junto con la secuencia de comandos, hay funciones como bucles , declaraciones condicionales , variables que se puede usar en un script de shell.

Una de esas características es almacenar un comando completo en una variable. Veamos qué queremos decir con eso y cómo se puede hacer.

Básicamente, los shells de Linux le permiten almacenar cualquier comando en una variable, como una cadena. Esto es útil para declaraciones complejas en línea que involucran múltiples comandos, redireccionamientos, etc. Esta variable luego se puede pasar al programa 'eval ‘ para que el contenido de la variable se ejecute como un comando.

Por ejemplo, para almacenar la salida del comando 'cat test.txt | wc -l ' en una variable llamada 'cnt ‘, podemos tener la siguiente declaración en el test.sh archivo de secuencia de comandos:

#!/bin/bash

cnt="cat test.txt | wc -l"

Ahora, para ejecutar este comando en cualquier punto, pasamos la variable como argumento a 'eval ', como se muestra a continuación:

#!/bin/bash

cnt="cat test.txt | wc -l"

eval $cnt

Guarde y salga del script.

Ahora ejecutemos el comando y la secuencia de comandos para verificar esto.

$ cat test.txt | wc -l
$ chmod + test.sh
$ ./test.sh

Nota :Reemplace test.sh con su nombre de guión. Asegúrese de que su archivo de script tenga privilegios de ejecución.

Como se ve en la captura de pantalla anterior, ambos resultados son iguales.

Conclusión

En este artículo, hemos visto cómo almacenar un comando de Linux como una variable en el script de shell. Aunque esto se ha mostrado en el script de shell, también puede hacer lo mismo en la línea de comando y luego pasar la variable a 'eval ‘.

Si tiene alguna pregunta o comentario, ¡háganoslo saber en los comentarios a continuación!


Linux
  1. ¿Cómo asignar la salida de un comando a una variable de shell?

  2. Cómo cambiar Shell en Linux

  3. ¿Cómo almacenar un comando en una variable en un script de shell?

  4. ¿Cómo almacenar el resultado de un comando de shell ejecutado en una variable en python?

  5. Cómo limpiar la salida del comando 'script' de Linux

Cómo ejecutar el comando / secuencia de comandos de Linux Shell en segundo plano

Comando fuente en Linux

Cómo usar el comando Declare en Linux Bash Shell

Cómo ejecutar Shell Script como servicio SystemD en Linux

Comando de exportación en Linux explicado

¿Cómo ejecutar un comando en un script de Shell?