return y set

RETURN

El comando return cumple las mismas funciones que el retorno, tal como mencionamos al estudiar las funciones previamente, return adopta un parámetro numérico único que está disponible para el script que llama a la función. Si no se especifica parámetro alguno, return adopta el código de salida del último comando.

set

El comando set configura las variables de parámetro de la shell. Puede ser un modo útil para usar campos en comandos que envían valores separados por comas.

Imagine que queremos usar el nombre del mes actual en un script shell. El sistema proporciona un comando date, que contiene el mes a modo de cadena, pero tiene que separarlo del resto de campos. Lo puede hacer usando una combinación del comando set y de la construcción $(...), y así podrá ejecutar el comando date y retornar el resultado (que en breve describiremos con todo detalle). La cadena del mes es el segundo parámetro de la salida del comando date:

ejemplo1_setEste programa configura la lista de parámetros de la salida del comando date y después usa el parámetro posicional $2 para obtener el mes.

set_resultadoTenga en cuenta que usamos el comando date a modo de sencillo ejemplo para mostrarle como extraer parámetros posicionales. Como el comando date es sensible ante los escenarios lingüísticos, en realidad habría extraído el nombre del mes usando date +%B. El comando date dispone de muchas otras opciones de formato, véase el manual para obtener más información.

También puede usar el comando set para controlar el modo de ejecución de la shell mediante la transmisión de parámetros. La forma más usada del comando es set -x, que hace que un script muestre una traza del comando que se está ejecutando en ese momento. Cuando nos ocupemos de la localización y solución de errores estudiaremos set y algunas de sus opciones.

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s