API de sistema operativo
ptool.os expone utilidades para leer el entorno actual del runtime y consultar detalles básicos del proceso anfitrión.
ptool.os.getenv
v0.4.0- Introduced.
ptool.os.getenv(name) devuelve el valor actual de una variable de entorno.
name(string, obligatorio): Nombre de la variable de entorno.- Devuelve:
string|nil.
Comportamiento:
- Devuelve
nilcuando la variable no está definida. - Lee el entorno actual del runtime de
ptool, incluidos los valores cambiados porptool.os.setenv(...)yptool.os.unsetenv(...). - Lanza un error cuando
nameestá vacío o contiene caracteres inválidos como=.
Example:
local home = p.os.getenv("HOME")
print(home)
ptool.os.env
v0.4.0- Introduced.
ptool.os.env() devuelve una tabla instantánea del entorno actual del runtime.
- Devuelve:
table.
Comportamiento:
- The returned table maps variable names to string values.
- Values changed through
ptool.os.setenv(...)andptool.os.unsetenv(...)are reflected in the snapshot.
Example:
local env = p.os.env()
print(env.HOME)
ptool.os.setenv
v0.4.0- Introduced.
ptool.os.setenv(name, value) define una variable de entorno en el runtime actual de ptool.
name(string, obligatorio): Nombre de la variable de entorno.value(string, obligatorio): Valor de la variable.
Comportamiento:
- Esto actualiza el entorno del runtime actual de
ptool, no el shell padre. - Values set here are visible to
ptool.os.getenv(...),ptool.os.env(), and child processes launched later throughptool.run(...). - Los valores definidos aquí son visibles para
ptool.os.getenv(...),ptool.os.env()y los procesos hijos lanzados después medianteptool.run(...).
Example:
p.os.setenv("APP_ENV", "dev")
print(p.os.getenv("APP_ENV"))
ptool.os.unsetenv
v0.4.0- Introduced.
ptool.os.unsetenv(name) elimina una variable de entorno del runtime actual de ptool.
name(string, obligatorio): Nombre de la variable de entorno.
Comportamiento:
- This affects later calls to
ptool.os.getenv(...),ptool.os.env(), and child processes launched byptool.run(...). - Lanza un error cuando
nameestá vacío o contiene caracteres inválidos como=.
Example:
p.os.unsetenv("APP_ENV")
assert(p.os.getenv("APP_ENV") == nil)
ptool.os.homedir
v0.4.0- Introduced.
ptool.os.homedir() devuelve el directorio personal del usuario actual.
- Devuelve:
string|nil.
Example:
local home = p.os.homedir()
ptool.os.tmpdir
v0.4.0- Introduced.
ptool.os.tmpdir() devuelve el directorio temporal del sistema.
- Devuelve:
string.
Example:
local tmp = p.os.tmpdir()
ptool.os.hostname
v0.4.0- Introduced.
ptool.os.hostname() devuelve el nombre del host actual.
- Devuelve:
string|nil.
ptool.os.username
v0.4.0- Introduced.
ptool.os.username() devuelve el nombre del usuario actual.
- Devuelve:
string|nil.
ptool.os.pid
v0.4.0- Introduced.
ptool.os.pid() devuelve el PID del proceso actual de ptool.
- Devuelve:
integer.
ptool.os.exepath
v0.4.0- Introduced.
ptool.os.exepath() devuelve la ruta resuelta del ejecutable ptool en ejecución.
- Devuelve:
string|nil.
Example:
print(p.os.hostname(), p.os.username(), p.os.pid())
print(p.os.exepath())