This class gives you access to many base functionalities of system platforms. Looks in sys
sub packages for more system APIs.
static command (cmd:String, ?args:Array<String>):Int
Run the given command. The command output will be printed on the same output as the current process. The current process will block until the command terminates and it will return the command result (0 if there was no error).
Command arguments can be passed in two ways: 1. using args
, 2. appending to cmd
and leaving args
as null
.
When using args
to pass command arguments, each argument will be automatically quoted, and shell meta-characters will be escaped if needed.
cmd
should be an executable name that can be located in the PATH
environment variable, or a path to an executable.
When args
is not given or is null
, command arguments can be appended to cmd
. No automatic quoting/escaping will be performed. cmd
should be formatted exactly as it would be when typed at the command line.
It can run executables, as well as shell commands that are not executables (e.g. on Windows: dir
, cd
, echo
etc).
Read the sys.io.Process
api for a more complete way to start background processes.
Gives the most precise timestamp value (in seconds) but only account for the actual time spent running on the CPU for the current thread/process.
static getChar (echo:Bool):Int
Read a single input character from the standard input (without blocking) and returns it. Setting echo
to true will also display it on the output.
static programPath ():String
Returns the absolute path to the current program file that we are running. Concretely, for an executable binary, it returns the path to the binary. For a script (e.g. a PHP file), it returns the path to the script.
static setTimeLocale (loc:String):Bool
Change the current time locale, which will affect DateTools.format
date formating.
Returns true if the locale was successfully changed
static stdin ():Input
Returns the process standard input, from which you can read what user enters. Usually it will block until the user send a full input line. See getChar
for an alternative.
static systemName ():String
Returns the name of the system you are running on. For instance : "Windows", "Linux", "BSD" and "Mac" depending on your desktop OS.