Hola,
¿se pueden devolver variables en un shell script?
Gracias
| ||||
Respuesta: Devolver resultados en shell script hola: De hecho, depende de lo q llames "devolver variables". Un script devuelve un valor numérico como código de salida del script. Por defecto es el código de salida del último comando ejecutado dentro del script. Si quieres devolver un valor en específico lo puedes hacer mediante:
Código BASH:
donde X es un literal o variable de tipo numérico.Ver original Usualmente el código de salida del script (y de cualquier programa) se utiliza para saber como finalizó su ejecución. Por convenio 0 es q finalizó correctamente, diferente de 0 es q hubo errores. Puedes tomar el código de salida de script mediante la variable $? Por ejemplo:
Código BASH:
Ver original Dale un vistazo a: http://tldp.org/LDP/abs/html/exit-status.html saludos; Nup_ |
| ||||
Respuesta: Devolver resultados en shell script De acuerdo, gracias a los dos por vuestras respuestas. He utilizado exit pero solo se pueden devolver valores numéricos no? A ver explico lo que quiero hacer. En mi script proceso un fichero de texto con awk para obtener dos valores:
Código BASH:
Ver original Así obtengo los datos widht y height. Pero lo que necesito es que el script me devuelva, si por ejemplo, width es 800 y height es 600, quiero que me devuelva 800x600. He probado poniendo:
Código BASH:
Ver original Pero me dice que requiere un argumento numérico. ¿Cómo podría resolverlo? He pensado ejecutar primero un script que me devuelva el valor de width, luego otro que me devuelva el valor de height, y luego unir los valores tal y como deseo utilizando python, que es el lenguaje que uso para ejecutar esos scripts, pero me parece demasiado engorroso. ¿Cómo lo veis vosotros? Saludos |
| ||||
Respuesta: Devolver resultados en shell script Bueno, he decido usar la solución que proponía de ejecutar dos veces el script para obtener cada valor. El caso es que que parece que no me devuelve bien el valor. Si tengo en la variable SIZE el valor que quiero pasar y pongo:
Código BASH:
Ver original Me devuelve un valor numérico pero no el valor de SIZE. |
| ||||
Respuesta: Devolver resultados en shell script Hola: El valor de salida no se usa para eso. Si lo q quieres hacer es devolver un valor compuesto por otros valores, lo q te recomiendo es q lo imprimas por la salida estándar y después mediante un pipe | lo pases a otro script. Ejemplo: Tu script
Código BASH:
Ver original Después puedes redirigir la salida de ese script como entrada a otro script:
Código BASH:
Ver original En miotroscript.sh puedes leer la entrada mediante
Código BASH:
Ver original También puedes hacer esto: En otroscript.sh
Código BASH:
Ver original saludos; Nup_ |
| ||||
Respuesta: Devolver resultados en shell script ¿Cómo lo estás ejecutando desde Python? Si no recuerdo mal, os.system te permite capturar el código de salida.
__________________ Christian González, "OCIOMax" http://chgonzalez.blogspot.com http://twitter.com/chgonzalez |
| ||||
Respuesta: Devolver resultados en shell script Hola: En python puedes capturar la salida estándard de un comando mediante el módulo subprocess:
Código Python:
Ver original Si estás usando una versión de python superior a la 2.7:
Código Python:
Ver original saludos; Nup_ |
| ||||
Respuesta: Devolver resultados en shell script Hola: En python puedes capturar la salida estándard de un comando mediante el módulo subprocess:
Código Python:
Ver original Si estás usando una versión de python superior a la 2.7:
Código Python:
Ver original saludos; Nup_ |
Etiquetas: |