Running commands in Background and tracking logs

Many of us would have encountered this situation where we need to run some script which takes hours together to complete.

And most of the time the shell goes inactive and it becomes really hard to track what has happened.

One simple solution for that is to run the script in background.\

For example:

./run_my_script.sh &

Oh.. But where are my logs.. Yes, its difficult for us to track what has happened, unless we redirect our output to some specific file .

Anyhow, we have a posix command in linux which can do this stuff. Its nohub.

Checkout the wikipedia link for it here

https://en.wikipedia.org/wiki/Nohup

all you need is to add nohup parameter before your script

nohup run_my_script.sh

Even if the shell goes down, doesnt matter.. We will have the process running in the background. And we can track the logs from nohub.out file . This file will be autocreated in the directory where we ran the script.