Código de Linux/Unix Shell Scripting - Ejecutar funciones desde la líne de comandos en BASH

Imágen de perfil
Val: 68
Plata
Ha mantenido su posición en Linux/Unix Shell Scripting (en relación al último mes)
Gráfica de Linux/Unix Shell Scripting

Ejecutar funciones desde la líne de comandos en BASHgráfica de visualizaciones


Linux/Unix Shell Scripting

Publicado el 16 de Junio del 2017 por Simón (2 códigos)
2.328 visualizaciones desde el 16 de Junio del 2017
Ejecuta, indistintamente un comando o una función contenida en un directorio de librerías. Útil para depuración de funciones.

1.1

Actualizado el 28 de Agosto del 2017 (Publicado el 16 de Junio del 2017)gráfica de visualizaciones de la versión: 1.1
2.329 visualizaciones desde el 16 de Junio del 2017
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#!/bin/bash
 
# fichero:	cmd
# procesador de librerías personales
# Autor:	Simón Martínez [simon@cicoss.net]
# Fecha:	08/06/2017
# Sintaxis:	cmd [comando | funcion] [parametros]
# Ejecuta indistintamente un comando o una función de librería
# Útil en depuración
 
declare -i NPARM=1	# Número mínimo de parametros
declare -f error	# Función de error de parametros
declare -f help		# Función de ayuda
 
function error(){
	echo "Error en 'cmd'"
	exit 0
}
 
function help(){
	if [ $# -eq 1 ];then
		# Si no se le pasa ningun comando
		echo "Ayuda de 'cmd'"
		exit 0
	fi
}
 
source Básico
 
declare WD=$(pwd)
declare orden="$1"
 
declare -f prueba
 
# Comprobamos si la orden pasada como parametro existe
if [[ "$(type "$orden" 2>&1;)" =~ "no se encontró" || "$(type "$1" 2>&1;)" =~ "not found" ]]; then
	# Si no existe buscamos si existe alguna función en algún fichero '.lib' dentro de
	# /usr/local/bin/BashLib
	result=("$(grep "function $orden" /usr/local/bin/BashLib/*.lib  2>&1;)")
	if [ $? -eq 0 ]; then
		# Si existe el nombre del fichero aparece antes de los dos puntos':'
		# en la respuesta de grep e importamos el fichero
		source ${result%%:*}
	else
		echo -e "$result"
		echo "Orden no encontrada"
		exit 1
	fi
fi

shift
respuesta=("$($orden "$@" 2>&1;)")
resultado=$?
echo -e "$respuesta"

exit $resultado



Comentarios sobre la versión: 1.1 (0)


No hay comentarios
 

Comentar la versión: 1.1

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad

http://lwp-l.com/s4028