Execute a process
Description
You can use the Execute a process step to execute a shell script on the host where a job will run.
- The step is similar to the job entry Shell, but can be used in a transformation to execute for every row.
Notes:
- If you want to run a powershell script on Windows systems, use the following options. Otherwise the process is not allowed to run (use -ExecutionPolicy ByPass) and waits for an input (use the undocumented option -inputformat none):
e.g. powershell.exe -ExecutionPolicy ByPass -inputformat none -File C:/path/test.ps1
see http://connect.microsoft.com/PowerShell/feedback/details/572313/powershell-exe-can-hang-if-stdin-is-redirected
Options
The following table provides a description of the options available for the Execute a process step:
Option |
Description |
---|---|
Step name |
Name of the step; this name has to be unique in a single transformation |
Process field |
The field name in the data stream that defines the process to start (shell script / batch file to start). Arguments can also be used. |
Fail if not success |
Checking this option means if the exit status is different than zero the step fails. You can use error handling to get these rows. |
Output line delimiter |
Without defining a line delimiter, all returned lines are collapsed into a single string with no line delimiters. |
Result fieldname |
Specify here the name of the result fieldname (STRING) added to the output stream of the transformation. This field is populated by the output stream (stdout) of the process. |
Error fieldname |
Specify here the name of the error fieldname (STRING) added to the output stream of the transformation. This field is filled by the error stream (stderr) of the process. |
Exit value |
Specify here the name of the exit fieldname (INTEGER) added to the output stream of the transformation. This field is filled by the exit output of the process. |