I'm looking for exception handling mechanism in shell script. Is there any try,catch equivalent mechanism in shell script ?
There is no try/catch in bash; however, one can achieve similar behavior using && or || . it stops your script if any simple command fails.
Let your Bash script help you find its errors with error handling. Scripting is one of the key tools for a sysadmin to manage a set of day-to-day activities such as running backups, adding users/groups, installing/updating packages, etc.
When you raise an exception you stop the program's execution. You can also use something like exit xxx where xxx is the error code you may want to return to the operating system (from 0 to 255). Here 125 and 64 are just random codes you can exit with.
There is not really a try/catch in bash (i assume you're using bash), but you can achieve a quite similar behaviour using && or ||.
In this example, you want to run fallback_command if a_command fails (returns a non-zero value):
a_command || fallback_command   And in this example, you want to execute second_command if a_command is successful (returns 0):
a_command && second_command   They can easily be mixed together by using a subshell, for example, the following command will execute a_command, if it succeeds it will then run other_command, but if a_command or other_command fails, fallback_command will be executed:
(a_command && other_command) || fallback_command 
                        If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With