Create multiple jobs in same terminal Basically I have two jobs:


Compiling a code 
Download a youtube video with using youtube-dl command


Both of the above commands use the terminal. I want to execute both of these commands in the same shell. I don't want to use another terminal, nor do I want to use another tab. I read something there is a command fg to do that stuff but don't know how to use it. Suppose I have started downloading video using youtube-dl. How can I hide that process and compile codes. And once I am done compiling I switch over to see how much the video has downloaded and vice-versa.
You can use screen. This allows you to set up new screens in your shell which you can switch between.

Quick reference guide:


ctrl-C creates a new screen
ctrl-N switches screens
ctrl-D ends screen