This class gives you access to many base functionalities of system platforms. Looks in sys sub packages for more system APIs.

Static methods

static args ():Array<String>

Returns all the arguments that were passed by the command line.

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.

  1. 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.

  2. 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.

static cpuTime ():Float

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 environment ():Map<String, String>

Returns all environment variables.

static executablePath ():String

Returns the path to the current executable that we are running.

static exit (code:Int):Void

Exit the current process with the given error code.

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 getCwd ():String

Get the current working directory (usually the one in which the program was started)

static getEnv (s:String):String

Returns the value of the given environment variable.

static print (v:Dynamic):Void

Print any value on the standard output.

static println (v:Dynamic):Void

Print any value on the standard output, followed by a newline.

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 putEnv (s:String, v:String):Void

Set the value of the given environment variable.

static setCwd (s:String):Void

Change the current working directory.

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 sleep (seconds:Float):Void

Suspend the current execution for the given time (in seconds).

static stderr ():Output

Returns the process standard error on which you can write.

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 stdout ():Output

Returns the process standard output on which you can write.

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.

static time ():Float

Gives the most precise timestamp value (in seconds).