10 consejos útiles para escribir scripts bash efectivos en Linux
- 4010
- 90
- Sra. Lorena Sedillo
Shell Scripting es la forma más fácil de programación que puede aprender/hacer en Linux. Más aún, es una habilidad requerida para la administración del sistema para automatizar tareas, desarrollar nuevas utilidades/herramientas simples solo por mencionar, pero algunas.
En este artículo, compartiremos 10 consejos útiles y prácticos para escribir scripts bash efectivos y confiables e incluyen:
1. Siempre use comentarios en los scripts
Esta es una práctica recomendada que no solo se aplica a las secuencias de comandos de shell sino a todos los demás tipos de programación. Escribir comentarios en un script te ayuda a ti o a alguien que pase por tu guión a comprender lo que hacen las diferentes partes del script.
Para empezar, los comentarios se definen usando el #
firmar.
#TecMint es el mejor sitio para todo tipo de artículos de Linux
2. Hacer una salida de script cuando falla
A veces, BASH puede continuar ejecutando un script incluso cuando falla un cierto comando, lo que afecta al resto del script (eventualmente puede dar como resultado errores lógicos). Use la línea a continuación para salir de un script cuando falla un comando:
#Let Script Salida Si un comando falla set -o errexit o set -e
3. Hacer una salida de script cuando Bash usa variable no declarada
Bash también puede intentar usar un script no declarado que podría causar un error lógico. Por lo tanto, use la siguiente línea para instruir a Bash que salga de un script cuando intente usar una variable no declarada:
#Let Script Salida Si se usa una variable uns -SED -SET -O STIMINSET o SET -U
4. Utilice cotizaciones dobles para variables de referencia
El uso de cotizaciones dobles mientras hace referencia (el uso de un valor de una variable) ayuda a evitar la división de palabras (con respecto al espacio en blanco) y los globos innecesarios (reconociendo y expandiendo comodines).
Mira el ejemplo a continuación:
#!/bin/bash #let script salga Si un comando falla set -o errexit #let script salga Si se usa una variable unsed set -o nace -eco echo "nombres sin cotizaciones dobles" echo names = "tecmint fossmint Linusay" para su nombre en $ nombres ; Do Echo "$ Nombre" Dado Echo Echo "Nombres con cotizaciones dobles" Echo para el nombre en "$ nombres"; hacer echo "$ name" hecho la salida 0
Guarde el archivo y salga, luego ejecutarlo de la siguiente manera:
ps ./Nombres.mierdaUse cotizaciones dobles en scripts
5. Use funciones en scripts
Excepto por scripts muy pequeños (con algunas líneas de código), siempre recuerde usar funciones para modularizar su código y hacer que los scripts sean más legibles y reutilizables.
La sintaxis para escribir funciones es la siguiente:
función check_root () command1; comando2; O check_root () command1; comando2;
Para un código de línea única, use caracteres de terminación después de cada comando como este:
check_root () command1; comando2;
6. Use = en lugar de == para comparaciones de cadenas
Tenga en cuenta que ==
es sinónimo de =
, Por lo tanto, solo use un solo =
Para comparaciones de cadenas, por ejemplo:
valor1 = "TecMint.com ”value2 =” fossmint.com "if [" $ value1 "=" $ value2 "]
7. Use $ (comando) en lugar de 'comando' heredado para su sustitución
La sustitución del comando reemplaza un comando con su salida. Usar $ (comando)
en lugar de retrocesos 'dominio'
Para la sustitución de comandos.
Esto se recomienda incluso con Shellcheck Tool (muestra advertencias y sugerencias para scripts de shell). Por ejemplo:
user = 'echo “$ uid”' user = $ (echo “$ uid”)
8. Use de solo lectura para declarar variables estáticas
Una variable estática no cambia; Su valor no se puede alterar una vez que se define en un script:
Readonly passwd_file = ”/etc/passwd” readonly group_file = ”/etc/group”
9. Use nombres mayúsculas para variables de entorno y minúsculas para variables personalizadas
Todas las variables de entorno bash se nombran con letras mayúsculas, por lo tanto, use letras minúsculas para nombrar sus variables personalizadas para evitar conflictos de nombres variables:
#Define las variables personalizadas usando minúsculas y use mayúsculas para las variables Env Nikto_file = ”$ Home/Downloads/Nikto-Master/Program/Nikto.PL "perl" $ nikto_file "-h" $ 1 "
10. Siempre realice la depuración para guiones largos
Si está escribiendo scripts bash con miles de líneas de código, encontrar errores puede convertirse en una pesadilla. Para arreglar fácilmente las cosas antes de ejecutar un script, realizar una depuración. Domine este consejo leyendo a través de las guías proporcionadas a continuación:
- Cómo habilitar el modo de depuración de script de shell en Linux
- Cómo realizar el modo de depuración de verificación de sintaxis en scripts de shell
- Cómo rastrear la ejecución de los comandos en el script de shell con el rastreo de shell
Eso es todo! ¿Tiene otras mejores prácticas de secuencias de comandos para compartir? En caso afirmativo, use el formulario de comentarios a continuación para hacerlo.
- « LNAV mire y analice los registros de Apache desde un terminal de Linux
- Trash -Cli una herramienta de basura para administrar 'basura' desde la línea de comandos de Linux »