Is there an equivalent of $! in ksh, which provides the error string ? $? stores the exit code only.


Unfortunately no. Generally in shell scripting, you can only get back information that the program passes to the environment, which on most unix systems is just the return code. Generally to find out what an error return value means, you will need to look in the manual page for the program which returned an error.

For example, the grep program will return a value of 1 if no lines are found to match, and a value of 0 (generally used for success) if there were lines found matching. A return value of 2 is used for an error. This is documented in the grep manpage

In many cases, the error will be printed on STDERR as well.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.