gå ut av tmux-vinduet uten å avslutte Terminal-programmet

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

  • man tmux | less -p detach
  • For mer interaktiv måte, du kan gjøre Ctrl+b s som vil vise økter, navigere til den du vil drepe og skrive :kill-session.

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 et SIGKILL 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 via SIGTERM eller lignende, og uansett grunn, nekter å gjøre det; selv da bør man likevel unngå å sende SIGKILL 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.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *