Cara menutup sesi tmux

64

Saya menggunakan tmux untuk mengelola beberapa terminal windows. Saat ini saya memiliki 2 jendela terbuka dengan banyak panel. Saya tahu bahwa saya harus menggunakan awalan (untuk saya itu ctrl+ a) untuk memasukkan perintah.

Bagaimana saya bisa menutup sesi dari dalam tmux? Perintah apa yang akan menutup sesi (semua jendela dan panel) dan tmux pada saat yang sama?

ph3nx
sumber
Untuk melepaskan dari tmux (membiarkan proses berjalan): unix.stackexchange.com/a/174443/178412
atomh33ls

Jawaban:

86

Tekan awalan Anda (misalnya Ctrl+ Aatau B, yang merupakan default) lalu :ketikkan kill-session, lalu tekan Enter. Ini akan, seperti nama perintah menyarankan, membunuh sesi.

0xC0000022L
sumber
33

Jika Anda ingin menutup sesi selain sesi saat ini (dan karenanya tetap menjalankan tmux; menutup sesi saat ini seperti pada jawaban @ 0xC0000022L, juga menutup tmux bahkan jika sesi lain tersedia), lakukan hal berikut di salah satu jendela tmux:

# tmux ls
keepMe: 1 windows (created Wed Jun 24 14:20:15 2015) [171x41]
otherSession: 1 windows (created Wed Jun 24 14:22:01 2015) [171x41]
3: 1 windows (created Wed Jun 24 14:23:28 2015) [171x41]

(assuming here that you're on keepMe session)
# tmux kill-session -t otherSession
-or-
# tmux kill-session -t 3

Ini menghapus "otherSession" atau sesi nomor 3, dan membiarkan tmux berjalan, dengan asumsi Anda tidak memiliki "otherSession" atau sesi nomor 3 yang dipilih ketika Anda menghapusnya.

Ville
sumber
1
Atau jika Anda lebih suka menggunakan awalan Anda, ctrl + prefixdiikuti oleh :dan kemudian ketik kill-session -t nameatau kill-session -t number. Jika Anda melakukan ini dari dalam sesi, Anda ingin mematikan pemasangan kembali menggunakan tmux a.
Matijs
19

Awalan TMUX (mis. ctrl+ b) +:kill-session

atau

tmux kill-session (bisa berjalan dari dalam sesi atau dari luar)

Kedua gaya doa dapat menggunakan bendera:

-t target-sessionhancurkan sesi yang diberikan
-amenghancurkan semua sesi tetapi sesi yang diberikan atau yang Anda lampirkan

Berlari kill-sessiondari luar TMUX membunuh sesi terakhir yang Anda lampirkan. -amembalikkan itu.

Dalam acara tersebut, bahwa Anda memiliki lebih dari satu sesi berjalan Anda bisa membunuh semua sesi sekaligus dengan: kill-server.

FSchndr
sumber
Ini mirip dengan jawaban yang diterima saat ini, dapatkah Anda menjelaskan lebih detail mengapa jawaban Anda berbeda?
Burgi
1
Tidak ada yang menunjukkan, bahwa Anda bisa menutup semua sesi dengan kill-serverperintah. Saya juga suka memberikan sedikit lebih dalam pada bendera untuk kill-session.
FSchndr
+1: Jawaban ini juga satu-satunya yang membantu -amenghancurkan semua sesi lainnya.
AaronDanielson
Ini jawaban yang lebih baik. Saya berharap ini ada di bagian atas jawaban ...
Blaszard