Lucee Tag Reference

<cfexecute>

Enables developers to execute a process on a server computer.

Body

This tag may have a body.

Example

<cfexecute
	[arguments=any]
	[directory=string]
	[environment=struct]
	[errorfile=string]
	[errorvariable=string]
	[exitcodevariable=string]
	name=string
	[onerror=any]
	[onprogress=any]
	[outputfile=string]
	[result=string]
	[terminateontimeout=boolean]
	[timeout=number]
	[variable=string]>
[</cfexecute>]
This tag is also supported within cfscript
<cfscript>
	execute
		[arguments=any]
		[directory=string]
		[environment=struct]
		[errorfile=string]
		[errorvariable=string]
		[exitcodevariable=string]
		name=string
		[onerror=any]
		[onprogress=any]
		[outputfile=string]
		[result=string]
		[terminateontimeout=boolean]
		[timeout=number]
		[variable=string] {
			[...]
	}
</cfscript>

Attributes

The attributes for this tag are fixed. Except for the following attributes no other attributes are allowed.
Name Type Required Description
arguments any No Command-line arguments passed to the application.
  • arguments as a string
  • arguments as an Array 
  • directory string No The working directory in which to execute the command 
    environment struct No An struct of environment variables 
    errorfile string No The file to which to direct the error stream of the program. If neither errorFile nor errorVariable is specified, the error stream is discarded. 
    errorvariable string No Variable in which to put program error stream output. If neither errorFile nor errorVariable is specified, the error stream is discarded. 
    exitcodevariable string No Variable in which to put the exit code value. 
    name string Yes The full pathname of the application to execute.
    Note: On Windows, you must specify the extension as part of the application's name. For example,
    myapp.exe, 
    onerror any No A UDF Listener which receives a single argument, output.
    Optional, If a OnProgress Listener is defined, but no onError listener, the error stream is redirected to the onProgress Listener.
    Returning false from the Listener will cancel the process execution 
    onprogress any No A UDF which receives two arguments, the progressive output and the java Process instance for the execution.
    If defined, output to the other variables will be null.
    The java Process instance can be used to interact with the executing process, i.e. via getOutputSteam().
    https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Process.html
    Returning false from the Listener will cancel the process execution 
    outputfile string No The file to which to direct the output of the program. If not specified, the output is
    displayed on the page from which it was called. 
    result string No The name of a variable to place the return struct, containing [ output, error, exitCode ] 
    terminateontimeout boolean No terminate execution of process when timeout occur 
    timeout number No Indicates how long, in seconds, the executing thread waits for the spawned process.
    A timeout of 0 is equivalent to the non-blocking mode of executing. A very high timeout value is
    equivalent to a blocking mode of execution. The default is 0; therefore, the thread spawns
    a process and returns without waiting for the process to terminate.If no output file is specified,
    and the timeout value is 0, the program output is discarded. 
    variable string No Variable in which to put program output.
    If no output file or variable attribute is specified,
    output is displayed on page from which it was called.