Archive for November, 2008
Closing telnet session without terminating the foreground process
by Frederick Tybalt on Nov.04, 2008, under Unix
Finally have found out a way to terminate the telnet session with out killing the foreground process which is running. Anyone struck with the above situation can follow this 🙂
Assume a script “script1” is running in the foreground for a long time and this script needs to be retained even if the telnet session is closed. Here are the steps which needs to be followed.
- On the telnet screen press <CTRL + Z>. This will temporarily stop the script or process to run.
$ ./script1.ksh [1] + Stopped (SIGTSTP) ./script1.ksh
- Type in the command “bg” to run the process in background
$ bg [1] ./script1.ksh&
- Identify the session process ID. This can be done by giving the “ps” command in the prompt.
$ ps PID TTY TIME CMD 4882522 pts/7 0:00 ps 4984988 pts/7 0:00 -sh
- Identify the PID of the script which is is shifted to background. In our case “script1” This can be done by ps command piped with grep as below.
$ ps -ef | grep script1.ksh user1 4399240 4984988 0 08:57:49 pts/7 0:00 grep script1.ksh user1 5029960 4829226 0 07:57:23 - 0:00 /usr/lpp/ars/bin/script1.ksh
- Now with all the PID’s collected, use “nohup” command
$ nohup -p 4984988 $ nohup -p 5029960
This will make the script or process not to be terminated even if the telnet session is closed.
NB: The telnet session process 4984988, will be running at the background unless it is killed.
Courtesy: Santhosh Fabian