कैसे tmux में एक खिड़की को समाप्त करने के लिए?


213

कैसे tmux में एक खिड़की को समाप्त करने के लिए? उपसर्ग होने के साथ स्क्रीनCtrlak में शॉर्टकट की तरह ।Ctrla


2
क्या आप के लिए googling थे? अगर मैं आपके प्रश्न शीर्षक को खोजता हूं, तो यह शीर्ष हिट है। शॉर्टकट की एक उपयोगी सूची है (नीचे एक जातिसूचक द्वारा पहचानी गई सहित)
ज्यॉफ

29
खैर, अब यह सवाल अपने आप में गूगल पर टॉप हिट है ...
jottr

जवाबों:


43

केंट की प्रतिक्रिया ने आपके प्रश्न का पूरी तरह से उत्तर दिया, हालांकि यदि आप tmux के कॉन्फ़िगरेशन को GNU स्क्रीन के समान बदलना चाहते हैं, तो यहां tmux.conf है जिसे मैंने इसे पूरा करने के लिए उपयोग किया है:

# Prefix key
set -g prefix C-a
unbind C-b
bind C-a send-prefix

# Keys
bind k confirm kill-window
bind K confirm kill-server
bind % split-window -h
bind : split-window -v
bind < resize-pane -L 1
bind > resize-pane -R 1
bind - resize-pane -D 1
bind + resize-pane -U 1
bind . command-prompt
bind a last-window
bind space command-prompt -p index "select-window"
bind r source-file ~/.tmux.conf

# Options
set -g bell-action none
set -g set-titles on
set -g set-titles-string "tmux (#I:#W)"
set -g base-index 1
set -g status-left ""
set -g status-left-attr bold
set -g status-right "tmux"
set -g pane-active-border-bg black
set -g pane-active-border-fg black
set -g default-terminal "screen-256color"

# Window options
setw -g monitor-activity off
setw -g automatic-rename off

# Colors
setw -g window-status-current-fg colour191
set -g status-bg default
set -g status-fg white
set -g message-bg default
set -g message-fg colour191

यह अत्यधिक
क्रिया

312

प्रयास करें Prefix+&

यदि आपके पास है

bind q killp

आप में .tmux.conf, आप विंडो को मारने के लिए Prefix+ भी दबा सकते qहैं, अगर उस विंडो में केवल एक पैनल है।

ऊपर उपसर्ग का डिफ़ॉल्ट Ctrl + है b, इसलिए डिफ़ॉल्ट रूप से विंडो को समाप्त करने के लिए आप Ctrl + का उपयोग कर सकते हैंb &


5
यह ठीक काम करता है: Ctrl+b &ध्यान दें, कि आपको yउस विंडो में सभी पैन की झुकाव वाली वर्तमान विंडो को मारने के साथ पुष्टि करनी होगी । आपको उस विंडो के अंदर रखा जाएगा, जिसे आपने इससे पहले इस्तेमाल किया था।
rubo77

1
यह ध्यान देने योग्य है कि डिफ़ॉल्ट रूप से Prefix+ qफलक संख्या दिखाता है, इसलिए killpइस संयोजन को असाइन करना इस शॉर्टकट को ओवरराइड करेगा।
14

106

<Prefix> & एक खिड़की को मारने के लिए

<Prefix> x एक फलक को मारने के लिए

यदि केवल एक फलक है (अर्थात विंडो को कई पैन में विभाजित नहीं किया जाता है, <Prefix> xतो विंडो को मार देगा)

हमेशा की तरह, <Prefix>यह आम तौर पर होता है CTRL+b। (मुझे लगता है कि शुरुआती सवालों के लिए, हम बस CTRL+bहर समय कह सकते हैं , और उपसर्ग के बारे में बात नहीं कर सकते, लेकिन फिर भी :))


मैं केवल <उपसर्ग> x के साथ फलक को नहीं मार सकता था, केवल <उपसर्ग> के साथ:, फिर टाइपिंग respawn-pane -k
पाब्लो ए

87

आम तौर पर:

tmux kill-window -t window-number

उदाहरण के लिए, यदि आप विंडो 1 में हैं और आप विंडो 9 को मारना चाहते हैं:

tmux kill-window -t 9

2
यह। (वैसे बहुत बहुत धन्यवाद!) यदि दूर से किया जाता है जहां tmux किसी अन्य टर्मिनल में चल रहा है, तो कोई भी इसका INFO=$(tmux new-window -P notepad)अनुसरण कर सकता है tmux kill-window -t $INFO
जोहान

69

मेरे लिए समाधान जैसा दिखता है:

  1. ctrl+b q फलक संख्या दिखाने के लिए।
  2. ctrl+b x फलक को मारने के लिए।

अंतिम फलक को मारना खिड़की को मार देगा।


2
यह सबसे अच्छा समाधान है जब आपने एक tmux विंडो के अंदर एक प्रक्रिया पूरी की है।
फिलिप किर्कब्राइड

1
Killing last pane will kill window। मेरे लिए काम नहीं करता है? मैं का उपयोग कर रहा हूँ MAC
एंडी Aldo

हाँ, मुझे लगता है कि यह अब तक का सबसे अच्छा समाधान है।
कलन

33

यदि आप केवल एक बार करना चाहते हैं, तो शॉर्टकट जोड़े बिना, आप हमेशा टाइप कर सकते हैं

<prefix> 
:
kill-window
<enter>

10

जबकि आपने पूछा कि खिड़की की इज्जत कैसे मारनी है। फलक , मैं अक्सर इसे मारना नहीं चाहता, लेकिन बस इसे एक कार्यशील स्थिति में वापस लाने के लिए (पैन का लेआउट मेरे लिए महत्वपूर्ण है, एक फलक को मारना इसे नष्ट कर देता है, इसलिए मुझे इसे फिर से बनाना होगा); tmux respawnउस प्रभाव को कमांड प्रदान करता है: respawn-paneसम्मान। respawn-window। बस मेरे जैसे लोगों को यह समाधान यहां मिल सकता है।


9

यह करने के लिए बहुत से अलग-अलग तरीके हैं, लेकिन मेरा पसंदीदा बस बैश प्रॉम्प्ट पर 'निकास' टाइप कर रहा है।


3
यह अनुमान है कि खिड़की में बैश चल रहा है। जिस खिड़की को मैं मारना चाहता था, जो मुझे इस पृष्ठ तक ले गई, वह tmux कमांड की सूची है - जिसमें बाहर निकलने के लिए कोई शेल नहीं है।
माइकल कैंपबेल

1
यदि आप <उपसर्ग> + द्वारा प्रदर्शित आदेशों की सूची देख रहे थे, तो आप q या <RET> दबाकर उसे छोड़ सकते हैं।
स्कॉट सेंटोनी

8

ctrl + d लिनक्स टर्मिनल में एक खिड़की को मारता है, tmux में भी काम करता है।

यह एक तरह का दृष्टिकोण है।


2
ध्यान दें कि इस शॉर्टकट का अर्थ है "डेटा का अंत"। यह केवल तभी काम करता है जब tmux फलक में वर्तमान में चल रही प्रक्रिया इस संकेत को स्वीकार कर लेती है और इसे प्राप्त करने पर स्वयं को समाप्त कर देती है (जैसे bos करता है)। क्योंकि फलक में चारों ओर कोई प्रक्रिया नहीं है, यह tmux द्वारा बंद हो जाता है। सभी मामलों में काम नहीं करता है।
नी

यह मैं देख रहा था वाट है।
thedanotto

1
यह ठीक है अगर खिड़की में एक रनिंग शेल है, लेकिन अगर बस एक जमे हुए अनुप्रयोग है, तो कुछ अधिक क्रूर की आवश्यकता है। निकोले फ़ोमिनाह का जवाब ठीक काम करता है।
oz1cz

यह केवल एक फलक को मारता है, एक खिड़की को नहीं।
स्टीवीड

1

डिफ़ॉल्ट रूप से
<Prefix>और
<Prefix>एक फलक को मारने के लिए एक विंडो x को मारने के लिए
और आप कॉन्फ़िगर जानकारी जोड़ सकते हैं

vi ~/.tmux.conf
bind-key X kill-session

तब
<Prefix>एक सत्र को मारने के लिए एक्स

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.