Table of Contents
Cómo escribir y usar funciones y bibliotecas de shell personalizadas
En Linux, los scripts de shell nos ayudan de muchas formas diferentes, incluida la realización o incluso la automatización de ciertas tareas de administración del sistema, la creación de herramientas de línea de comandos simples y muchas más.
En esta guía, mostraremos nuevos sistemas Linux usuarios dónde almacenar de manera confiable scripts de shell personalizados, explicar cómo escribir funciones y bibliotecas de shell personalizados, usar funciones de bibliotecas en otros scripts.
Dónde almacenar scripts de shell
Para ejecutar sus scripts sin escribir una ruta completa/absoluta, deben almacenarse en uno de los directorios de la variable de entorno $ PATH.
Para verificar su $ PATH. emite el siguiente comando:
$ echo $ PATH. usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
Normalmente, si el directorio bin. existe en el directorio de inicio de un usuario, se incluye automáticamente en su $ PATH. Puede almacenar sus scripts de shell aquí.
freestar.config.enabled_slots.push
Por lo tanto, cree el bin. directorio (que también puede almacenar secuencias de comandos Perl. Awk o Python. o cualquier otro programa):
$ mkdir ~/bin
A continuación, cree un directorio llamado lib. (abreviatura de bibliotecas) donde guardará sus propias bibliotecas. También puede mantener bibliotecas para otros lenguajes como C, Python, etc. Debajo, cree otro directorio llamado sh. esto almacenará particularmente sus bibliotecas de shell:
$ mkdir-p ~/lib/sh
Cree sus propias funciones y bibliotecas de shell
Una función de shell. es una grupo de comandos que realizan una tarea especial en un script. Funcionan de manera similar a los procedimientos, subrutinas y funciones en otros lenguajes de programación.
La sintaxis para escribir una función es:
function_name () lista de comandos
Por ejemplo, puede escribir una función en un script para mostrar la fecha. de la siguiente manera:
showDATE () date;
Cada vez que desee mostrar fecha. simplemente invoque la función anterior usando su nombre:
$ showDATE
Una biblioteca de shell. es simplemente un script de shell, sin embargo, puede escribir una biblioteca para almacenar solo sus funciones desde las que puede llamar más tarde otros scripts de shell.
A continuación se muestra un ejemplo de una biblioteca llamada libMYFUNCS.sh. en mi directorio ~/lib/sh. con más ejemplos de funciones:
#!/bin/bash #Función para listar claramente directorios en PATH showPATH () oldifs = “$ IFS” #store antiguo separador de campo interno IFS =: #especificar un nuevo separador de campo interno para DIR en $ PATH; echo $ DIR; done IFS = “$ oldifs” #restore antiguo separador de campo interno #Función para mostrar el usuario registrado showUSERS () echo-e “A continuación se muestra el usuario que inició sesión en el sistema: \ n” w #Imprimir los detalles de un usuario printUSERDETS () oldifs = “$ IFS” #almacenar el antiguo separador de campo interno IFS =: #especificar un nuevo separador de campo interno read-p “Ingrese el nombre de usuario que se buscará:” uname #read username echo “” #leer y almacenar desde una cadena here valores en variables usando: como un delimitador de campo read-r username pass uid gid comments homedir shell <<<"$ (cat/etc/passwd
Guarde el archivo y haga que el script sea ejecutable.
Cómo invocar funciones desde una biblioteca
Para utilizar una función en una lib. primero debe incluir la lib. en el script de shell donde se utilizará la función, en el siguiente formulario:
$ ./path/to/lib O $ source/path/to/lib
Por lo tanto, usaría la función printUSERDETS. de lib ~/lib/sh/libMYFUNCS.sh. en otro script como se muestra a continuación.
No es necesario que escriba otro código en este script para imprimir los detalles de un usuario en particular, simplemente llame a una función existente.
Abra un nuevo archivo con el nombre test.sh.
#!/bin/bash #include lib. ~/lib/sh/libMYFUNCS.sh #use función de lib printUSERDETS #exit script exit 0
Guárdelo, luego haga que el script sea ejecutable y ejecútelo:
$ chmod 755 test.sh $ ./test.sh
Escribir funciones de shell
En este artículo, mostramos dónde almacenar de forma fiable scripts de shell, cómo escribir sus propias funciones y bibliotecas de shell, invocar funciones de bibliotecas en scripts de shell normales.
A continuación, explicaremos una forma sencilla de configurar Vim. como IDE. para secuencias de comandos Bash. Hasta entonces, manténgase siempre conectado a TecMint y también comparta sus pensamientos sobre esta guía a través del formulario de comentarios a continuación.