Running scripts or processes even if the user logs out
Sometimes we may need our script to run even after we log out, such as when taking a back up and similar activities. In this case, even if we log out, the system is powered on and running. In such situations, we can use the nohup command. The nohup command prevents the process from terminating using the SIGHUP signal.
The nohup command makes our script run without attaching it to a terminal. Therefore, if we use the echo command to print text on the terminal. It will not be printed in a terminal, since the script is not attached to a terminal. In such cases, we need to redirect the output to the file, or nohup will automatically redirect the output to a nohup.out file.
Therefore, if we need to run a process, even if we log out, we need to use the nohup command as follows:
$ nohup command &
The example is as follows:
$ nohup sort emp.lst &
This will run a program to sort the emp.lst file in the background.
$ nohup date &