Table of Contents | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
|
h1. Passing parameters to shell-scripts
User defined Parameters in Shell-Scripts
Job parameter and order params are accessible by the use of environment variables. There is a rule for the name of such an environment variable. The name of the environment variable according to a parameter is SCHEDULER_PARAM_NAMEOFPARAM. For example the job parameter param1 is available by the environment variable SCHEDULER_PARAM_PARAM1 (always in upper case letters).
Sample
Code Block |
---|
<job> <params> <param name="param1" value="Test"/> </params> <script language="shell"> <![CDATA[ rem This is a sample shell script to demonstrate the use of parameters echo Param1 has the value %scheduler_param_param1% ]]> </script> <run_time/> </job> |
for Linux
Code Block |
---|
<job> <params> <param name="param1" value="Test"/> </params> <script language="shell"> <![CDATA[ # This is a sample shell script to demonstrate the use of parameters echo Param1 has the value $SCHEDULER_PARAM_PARAM1 ]]> </script> <run_time/> </job |
If you want to use the parameters as parameters for a script in the command-line just append the Names to the Scriptname:
Code Block |
---|
anyshellscript.sh $SCHEDULER_PARAM_PARAM1 $SCHEDULER_PARAM_PARM2 ... |
Setting Parameter in Shell-Scripts and put them to the next node in job chains.
At every change of status in job chains Job Scheduler parses a temporary file for "namh1. value" pairs. The "namevalue" pairs will be set as order params. The name of the temporary file is available with the environment variable SCHEDULER_RETURN_VALUES.
First Job
Code Block |
---|
<job order="yes" stop_on_error="no"> <params> <param name="param1" value="Test"/> </params> <script language="shell"> <![CDATA[ rem This is a sample shell script to demonstrate the use of parameters echo newParam=a sample value >> %scheduler_return_values% ]]> </script> <run_time/> </job> |
Second Job
Code Block |
---|
<job order="yes" stop_on_error="no"> <params> <param name="param1" value="Test"/> </params> <script language="shell"> <![CDATA[ echo newParam has the value %scheduler_param_newParam% ]]> </script> <run_time/> </job> |
Job Chain
Code Block |
---|
<job_chain> <job_chain_node state="100" job="job_sample_shell_with_parameter" next_state="200" error_state="error"/> <job_chain_node state="200" job="job_sample_shell" next_state="success" error_state="error"/> <job_chain_node state="success"/> <job_chain_node state="error"/> </job_chain> |
related downloads:
see also: