Not sure on the special character here, but we had similar problems with NSH script jobs after we upgrade from 8.3.2 to 8.6.1.
I think they actually fixed a bug there.
Beforehand you could define a required parameter for an NSH script job and actually leave it empty during the run.
Now, if a parameter is flagged as required, it really requires a value.
Could you check if that parameter is flagged as required on your job/script ?
Thanks for the reply.
The parameter is flagged as optional.
I will try to figure out what character the Variable $CONTINUE_ON_ERR contains, if the parameter is not set.
In the meanwhile I extracted the special character from an empty Parameter: looks like its a backslash \ (hex 5c).
so why don't you just pass a value for this parameter ? eg 'true' ?
This will be probably the quickest solution.
I just wondered why the Parameter handling changed for empty Parameters.
There are maybe more script jobs to update....
prior to 8.5 if you left a parameter value blank in a job it was actually empty so the next parameter would be passed. so if you have a script that takes 4 args:
nsh script.nsh arg1 arg2 arg3 arg4
and you run this as a job and left the 2nd parameter empty you would get effectively this on the command line
nsh script.nsh arg1 arg3 arg4
in 8.5 there was a fix which resulted in what you see w/ the \000 character being sent instead of nothing.
that is also not right as you saw.
this should be fixed in 8.7 (QM001871503) so now leaving arg2 blank should get you the equivalent of
nsh script.nsh arg1 "" arg3 arg4
so $2 will be set but null (that's two double quotes w/ no space)
Thanks for the explanation.
Helps to understand the new approach of Parameters.