<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"></meta><title>ExecuteProcess</title><link rel="stylesheet" href="../../../../../css/component-usage.css" type="text/css"></link></head><script type="text/javascript">window.onload = function(){if(self==top) { document.getElementById('nameHeader').style.display = "inherit"; } }</script><body><h1 id="nameHeader" style="display: none;">ExecuteProcess</h1><h2>Description: </h2><p>Runs an operating system command specified by the user and writes the output of that command to a FlowFile. If the command is expected to be long-running, the Processor can output the partial data on a specified interval. When this option is used, the output is expected to be in textual format, as it typically does not make sense to split binary data on arbitrary time-based intervals.</p><h3>Tags: </h3><p>command, process, source, external, invoke, script</p><h3>Properties: </h3><p>In the list below, the names of required properties appear in <strong>bold</strong>. Any other properties (not in bold) are considered optional. The table also indicates any default values, and whether a property supports the <a href="../../../../../html/expression-language-guide.html">NiFi Expression Language</a>.</p><table id="properties"><tr><th>Display Name</th><th>API Name</th><th>Default Value</th><th>Allowable Values</th><th>Description</th></tr><tr><td id="name"><strong>Command</strong></td><td>Command</td><td></td><td id="allowable-values"></td><td id="description">Specifies the command to be executed; if just the name of an executable is provided, it must be in the user's environment PATH.<br/><strong>Supports Expression Language: true (will be evaluated using variable registry only)</strong></td></tr><tr><td id="name">Command Arguments</td><td>Command Arguments</td><td></td><td id="allowable-values"></td><td id="description">The arguments to supply to the executable delimited by white space. White space can be escaped by enclosing it in double-quotes.<br/><strong>Supports Expression Language: true (will be evaluated using variable registry only)</strong></td></tr><tr><td id="name">Batch Duration</td><td>Batch Duration</td><td></td><td id="allowable-values"></td><td id="description">If the process is expected to be long-running and produce textual output, a batch duration can be specified so that the output will be captured for this amount of time and a FlowFile will then be sent out with the results and a new FlowFile will be started, rather than waiting for the process to finish before sending out the results</td></tr><tr><td id="name">Redirect Error Stream</td><td>Redirect Error Stream</td><td id="default-value">false</td><td id="allowable-values"><ul><li>true</li><li>false</li></ul></td><td id="description">If true will redirect any error stream output of the process to the output stream. This is particularly helpful for processes which write extensively to the error stream or for troubleshooting.</td></tr><tr><td id="name">Working Directory</td><td>Working Directory</td><td></td><td id="allowable-values"></td><td id="description">The directory to use as the current working directory when executing the command<br/><strong>Supports Expression Language: true (will be evaluated using variable registry only)</strong></td></tr><tr><td id="name"><strong>Argument Delimiter</strong></td><td>Argument Delimiter</td><td id="default-value"> </td><td id="allowable-values"></td><td id="description">Delimiter to use to separate arguments for a command [default: space]. Must be a single character.</td></tr></table><h3>Dynamic Properties: </h3><p>Supports Sensitive Dynamic Properties: <strong>No</strong></p><p>Dynamic Properties allow the user to specify both the name and value of a property.<table id="dynamic-properties"><tr><th>Name</th><th>Value</th><th>Description</th></tr><tr><td id="name">An environment variable name</td><td id="value">An environment variable value</td><td>These environment variables are passed to the process spawned by this Processor<br/><strong>Supports Expression Language: false</strong></td></tr></table></p><h3>Relationships: </h3><table id="relationships"><tr><th>Name</th><th>Description</th></tr><tr><td>success</td><td>All created FlowFiles are routed to this relationship</td></tr></table><h3>Reads Attributes: </h3>None specified.<h3>Writes Attributes: </h3><table id="writes-attributes"><tr><th>Name</th><th>Description</th></tr><tr><td>command</td><td>Executed command</td></tr><tr><td>command.arguments</td><td>Arguments of the command</td></tr></table><h3>State management: </h3>This component does not store state.<h3>Restricted: </h3><table id="restrictions"><tr><th>Required Permission</th><th>Explanation</th></tr><tr><td>execute code</td><td>Provides operator the ability to execute arbitrary code assuming all permissions that NiFi has.</td></tr></table><h3>Input requirement: </h3>This component does not allow an incoming relationship.<h3>System Resource Considerations:</h3>None specified.</body></html>