A command job that runs a shell script on UNIX fails with exit code 2. The error that is written to the std_err_file indicates that the script cannot be found...
cybspawn: Wed Jan 27 10:27:12 2016:101.4_1/WAAE_WF0.1/MAIN: Could not exec /tmp/test.sh: error 2 (No such file or directory)
However, the script is verified to exist in the specified path, has proper execute permissions for the job owner
The error was actually coming from the first line in the job script where the shell was being sourced. The first line read '#!/usr/bin/ksh'. However, this was an invalid line for setting the shell interpreter which are typically in /bin and not /usr/bin.
The error that was written to the error log was impacted by the oscomponent.cmdprefix.force setting for the agent. When this parameter is either not set, or set to "false", the job's command is run directly by the agent using the 'exec' command. Because of that, the error wasn't as descriptive as it would have been if executed without the 'exec' command. When the parameter is set to "true", the job's command is executed by a wrapper script that is build by the agent and the logged error becomes much more descriptive of the actual problem. Here is an example of the same job failure with the oscomponent.cmdprefix.force set to "true"...
/opt/CA/WorkloadAutomationAE/SystemAgent/WA_AGENT/spool/PL1_SCH/MAIN/WAAE_WF0.1/101.5_1.F72BA2891DF296CE68B73C50C6C1CA976651BA68.sh: /tmp/test.sh: /usr/bin/ksh: bad interpreter: No such file or directory
The shell source line in the script was corrected to resolve the error.
For WAAE, it is recommended to set oscomponent.cmdprefix.force=true in the agentparm.txt file to maintain compatibility with jobs run under previous WAAE releases. This is set automatically when the agent is installed by the WAAE media. However, if the agent is installed using the generic agent media, you must select "legacy compatibility" during the install for it to be set automatically.