I'm working on an automation framework for cybersecurity workflows and I'm wondering about the best approach to structuring my bash scripts. Is it more effective to create multiple small bash files for each operation, or should I just use one large bash script?
Also, as a beginner in bash, I'm concerned about dealing with failures. If my script has been running for 8 hours and then it breaks, is there any way to handle that, since there's no traditional try/catch mechanism? It's frustrating to think I might lose 8 hours of work and have to rerun everything just to see if it works.
1 Answer
You should definitely look into using exit signals and the "trap" command. It acts like a try/catch for errors in bash scripts, which can help a lot! There's a great article I found that explains it well, and I'll link it here for you.
As for your question about structuring your code, if your operations are likely to be used in more than one script, it's a good idea to separate them into different files. But if they're specific to one process, consider using functions in a single script to keep it organized.

Wow, this is such a great tip! I had no idea about that command. Just curious, how do you feel about using large code files versus smaller ones in your scripts? What about rerunning specific sections?