OK jeg er ny på dette. Jeg installerte tmux
for å kjøre etter flere dager. Etter å ha skrevet tmux new -s name
fikk jeg et nytt vindu med grønt banner nederst. Jeg kompilerer og kjører java-program. Nå vet jeg ikke hvordan jeg skal gå ut av vinduet (mens la den kjøre). Bash-markøren (eller hva som helst) svarer ikke fordi java-programmet fortsatt kjører. Min løsning så langt er å avslutte Terminal-programmet helt og åpne det igjen. Eventuelle ideer om hvordan du avslutter tmux-vinduet uten å gå ut hele Terminal-programmet?
Kommentarer
Svar
Koble fra gjeldende vedlagt økt
Økt
Ctrl + b d eller Ctrl + b :detach
Skjerm
Ctrl + a Ctrl + d eller Ctrl + a :detach
Kommentarer
- Du må da kjøre
tmux attach
for å gå inn i den åpne økten igjen etter tilkobling. - I ' har alltid gjort
ENTER ~ .
Dette virker hyggeligere. - Er det mellomrom mellom
~
og.
og den returnerer ogsåpermission denied: /home/folder
@ThomasEding - @alper Ingen mellomrom i det hele tatt i uttrykket I skrevet ovenfor.
Svar
De forrige svarene er ufullstendige, tror jeg. Det :detach
gjør er å stenge visningsportene som viser tmux-aktivitet. Imidlertid kjører tmux selv fremdeles i bakgrunnen som du kan se ved å kjøre ps
:
myuser 1799 0.0 0.0 2500052 4632 ?? Ss 21Feb16 0:48.39 tmux new-session -s Dev
Faktisk, selv om du avslutter terminalen og starter den opp igjen, kjøres fortsatt tmux-prosesser i bakgrunnen.
For å faktisk drepe tmux-prosessen, må du gjøre:
tmux kill-session [-t session_name]
eller ganske enkelt:
kill -9 1799
Kommentarer
- Imho, det ville være mer fornuftig å kommentere noen svar ' mangler under det aktuelle svaret og la innlegget ditt være som et fullstendig og inneholdt svar uten å kreve at leserne finner ut hvilke svar som er tidligere, og deretter analyserer dem. , så å drepe det ville være kontraproduktivt. Mer interessant vil være å knytte senere til den løsrevne prosessen med
tmux attach-session
. - Å bruke
kill -9
er absolutt Feil måte ™ for å gjøre dette. Dette sender etSIGKILL
signal som ikke lar prosessen rydde opp etter seg selv, noe som kan forårsake alvorlige problemer med dinglende ressurser.SIGKILL
skal bare brukes når en prosess allerede er høflig bedt om å rydde opp og slå av viaSIGTERM
eller lignende, og uansett grunn, nekter å gjøre det; selv da bør man likevel unngå å sendeSIGKILL
hvis de kan. Dette svaret (feil) viser at det skal være en av de første tingene en person skal gjøre for å stenge en bakgrunnsprosess som en tmux-server.
man tmux | less -p detach
Ctrl+b s
som vil vise økter, navigere til den du vil drepe og skrive:kill-session
.