Some time ago I've written an article about a particular aspect of shells, job control: https://emersion.fr/blog/2019/job-control/