Problema con variables en BASH [Solucionado]

Iniciado por NekoOs, 16 Junio 2012, 23:29 PM

0 Miembros y 1 Visitante están viendo este tema.

NekoOs

Código (actionscript) [Seleccionar]

#!/bin/bash
# FUNCIONES EMPLEADAS
function RPROD()
{
#este solo es por probar
let PRECIOS=$PRECIO+1
read -p "DIGITE EL PRECIO DEL PRODUCTO: >> " PRECIO
read -p "DIGITE LA CANTIDAD DE DISPONIBLE: >> " CANTID
}
# NOMBRE DEL PRODUCTO
read -p "DIGITE EL NOMBRE DEL PRODUCTO: >> " NOMBRE
PRECIO=6
if [ ! -e INVENTARIO.CSV ]; then ( ACOD; RPROD); fi
# estos 3 no se ven  :-(
echo $PRECIOS
echo PRECIO
echo CANTID
# solo este parece ser una variable global
echo NOMBRE
read
#tengo entendido que para determiar una variable local se usa el local variable pero no es mi caso yo quiero que las acciones que resultan de mis funciones puedan usarse en cualquier parte del script

Esto se puede  :rolleyes: en realidad son muchas mas funciones y quizas me respondan que para que hago las operaciones dentro de una funcion y la respuesta es que algunas funciones se usan paa varios aspectos desde registrar, hasta modificar y comprar los datos que se le piden al usuario son los mismos solo cambia el uso que se le da al resultado  :-\ les agradeceria mucho que me ayudasen con esto  :silbar: >:(

leogtz

Solo hay que definir las variables antes de definir la función:

Código (bash) [Seleccionar]
#!/usr/bin/env bash
edad=21

function algo() {
read -p "Edad: " edad
}

echo -e "Antes de llamar a función: ${edad}";
algo;
echo -e "Después de llamar a función: ${edad}";
Código (perl) [Seleccionar]

(( 1 / 0 )) &> /dev/null || {
echo -e "stderrrrrrrrrrrrrrrrrrr";
}

http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com

NekoOs

Te agradezco mucho por tu ayuda aunque encontre la manera de solucionarlo claro el metodo era algo mas engorroso  ;D pronto estare actualizando todo el codigo que escribi y me sera muy util tu aporte  ;-)