En la práctica viene a ser equivalente a realizar un script bash (por ejemplo) salvo que tenemos a nuestra disposición casi todas las opciones disponibles en Gambas.
Para poder acceder a estas funciones es necesario instalar el paquete gambas2-script. A partir de este momento ya tendremos disponible en nuestro sistema gbs2 que es el intérprete.
Inicio
Como todos los scripts se debe iniciar con el entorno en que se mueve. En nuestro caso:
Código: Seleccionar todo
#!/usr/bin/env gbs2
A partir de ahí realizar las tareas que queramos con nuestro script:
Código: Seleccionar todo
#!/usr/bin/env gbs2
'ejecutar un proceso y mostrar el resultado
print "Ejecución en progreso"
print "Mostrando las veinte últimas líneas de log"
shell "tail -20 /var/log/archivo.log"
print "proceso ejecutado correctamente
Código: Seleccionar todo
#!/usr/bin/env gbs2
Dim Nombre AS String , Apellido as string
Print "Nombre:"
Input Nombre
Print "Apellido:"
Input Apellido
print "El nombre es: '" & Nombre & " " & Apellido & "'"
La clase application
La propiedad Args es un array de parámetros. Args[0] es igual a Application.name y es siempre el nombre del programa.
Como todo array disponemos de Args.count para saber la cantidad de parámetros:
Código: Seleccionar todo
#!/usr/bin/env gbs2
Dim x as integer
Print "Aplicación: " & Application.Args[0]
for x=1 to Application.Args.count-1
Print x & "º parámetro: " & Application.Args[x]
next
También como todo script que se precie puede requerir consultar alguna variable de entorno. Para ello igualmente acudiremos a la clase Application pero esta vez con la propiedad Env:
Código: Seleccionar todo
#!/usr/bin/env gbs2
if application.env["Variable"]="1" then
print "valor inadecuado"
endif
Naturalmente funcionan con funciones y rutinas exactamente igual que el gambas de siempre:
Código: Seleccionar todo
#!/usr/bin/env gbs2
public sub Main()
Dim Op1 as integer, Op2 as integer, Resultado as integer
...
MostrarAsteriscos()
print "Introduzca valor 1: "
Input Op1
print "Introduzca valor 2: "
Input Op2
Resultado=CalcularResultado(Op1,Op2)
print "El resultado es: " & Resultado
end
private sub MostrarAsteriscos
Dim A as string
A=string("*",40) 'crear un string de 40 asteriscos
print A
end
private Function CalcularResultado(A as integer, B as integer) as integer
return A+B
End
Código: Seleccionar todo
#!/usr/bin/env gbs2
use "gb.net"
public sub Main()
Dim S as new socket
...
... 'aquí ponemos lo que queramos con nuestro socket
...
end