Am in the middle of cleaning up some backup shell scripts. Got a basic question. Is there someway to "automatically default" to a nocatalog option when the catalog is unavailable? Or do I have to explicitly code logic within the script?

Yes, one solution would be always run in nocatalog mode and resync catalog at the end of the exercise. But that's besides the point.