OK I'm new to this. I installed tmux
to run a several days experiment. After typing tmux new -s name
I got a new window with green banner at the bottom. I compile and run java program. Now I do not know how to exit the window (while leave it running). The bash (or whatever) cursor is not responding because the java program is still running. My solution so far is to quit the Terminal program completely and reopen it again. Any ideas on how to quit the tmux window without exiting the whole Terminal program?
Asked
Active
Viewed 3e+01k times
149

seteropere
- 1,609
- 2
- 11
- 5
2 Answers
246
Detach from currently attached session
Session
Ctrl+ b d or Ctrl+ b :detach
Screen
Ctrl+ a Ctrl+ d or Ctrl+ a :detach

HalosGhost
- 4,790

Ruban Savvy
- 8,659
-
6You then need to run
tmux attach
to enter the open session again after re-connecting. – Besi Feb 27 '19 at 17:56 -
1
-
Is there space between
~
and.
and it also returnspermission denied: /home/folder
@ThomasEding – alper Oct 18 '20 at 19:23 -
18
The previous answers are incomplete, I believe. What :detach
does is to shut down the viewports that are displaying tmux activity. However, tmux itself is still running in the background as you can see by running ps
:
myuser 1799 0.0 0.0 2500052 4632 ?? Ss 21Feb16 0:48.39 tmux new-session -s Dev
In fact, even if you quit terminal and start it up again, any tmux processes are STILL running in the background.
To actually kill the tmux process itself, you have to do:
tmux kill-session [-t session_name]
or simply:
kill -9 1799

JESii
- 458
-
7Imho, it would make more sense to comment about some answer's deficiencies under that particular answer and leave your post as a complete and contained answer without requiring readers to find out which answers are previous and then analyse them. – techraf Mar 02 '16 at 14:59
-
5I think OP specifically wanted the background process (java, in his case) to continue running, so killing it would be counter-productive. More interesting would be to re-attach later to the detached process with
tmux attach-session
. – ThomasH Mar 27 '18 at 15:46 -
4Using
kill -9
is absolutely the Wrong Way(tm) to do this. This sends aSIGKILL
signal which will not allow the process to clean up after itself, which can cause serious problems with dangling resources.SIGKILL
should only be used when a process has already politely been asked to cleanup and shut down viaSIGTERM
or similar and, for whatever reason, refuses to do so; even then, one should still avoid sendingSIGKILL
if they can. This answer infers (incorrectly) that it should be one of the first things a person should do to shutdown a background process like a tmux server. – eestrada Aug 12 '19 at 23:47
man tmux | less -p detach
– jasonwryan Dec 16 '14 at 03:47Ctrl+b s
which will list sessions, navigate to the one you want to kill and type:kill-session
. – hakunin Apr 16 '20 at 11:22exit
and it worked on my Mac terminal. – Dave Liu Jun 14 '22 at 23:48