Para ello existen dos comandos: Shell y Exec
El Shell:
[ Process = ] SHELL Command [ WAIT ] [ FOR { { READ | INPUT } | { WRITE | OUTPUT } } ] [ AS Name ]
SHELL Command TO Variable
SHELL Command TO Variable
Pasa el comando (una cadena de caracteres) a la shell del sistema( /bin/sh)
Con "To" enviamos la salida estandar a la variable indicada. Si se produce una salida de error, la tenemos que redireccionar a la salida estandar:
Shell "command 2>&1" To Result
El Exec:
[ Proceso = ] EXEC Comando [ WAIT ] [ FOR { { READ | INPUT } | { WRITE | OUTPUT } }
EXEC Comando TO Variable
EXEC Comando TO Variable
Usa la función exec() del sistema.
Comando es un array de cadenas con los distintos comandos y parámetros.
EXEC ["/bin/ls", "-l", "*.o", ">/tmp/list"]
Tanto Shell como Exec, podemos asignarles procesos, con lo cual podemos controlar varios aspectos: si ha terminado, si esta produciendo alguna salida (For Read) , o incluso lo podemos "matar".
Nota: " &"
Si añadimos a la linea de comandos un espacio y el simbolo &, el proceso será lanzado de forma independiente, con lo cual se consigue que si se cierra el programa principal, no tenga que cerrarse la ejecución del programa secundario.
Ejemplo:
EXEC ["/bin/ls", "-l", "*.o", ">/tmp/list"," &"]
Se ejecuta el comando ls, independientemente del programa de gambas.
Fuente: http://www.gambas-es.org/viewtopic.php?f=4&t=3583&highlight=unix
Ejemplo: Buscar Archivos
Hacer front-end del comando Find , el cual le definimos la ruta de búsqueda y el nombre (que admite caracteres comodines) , nos dé el resultado en un TextArea.
Código fuente:
-
-
Captura de Pantalla del programa:
Enlace de Descarga: archivo alojado en box.com
Para más información:
http://gambaswiki.org/wiki/lang/shell
http://gambaswiki.org/wiki/lang/exec
http://gambaswiki.org/wiki/doc/shellexec (diferencias entre el uso de Shell y Exec)
http://gambaswiki.org/wiki/comp/gb/process
http://gambaswiki.org/wiki/lang/lof
No hay comentarios:
Publicar un comentario