Tmux के भीतर से डिफ़ॉल्ट नई विंडो डायरेक्टरी को कैसे बदलें


42

मैं हाल ही में GNU स्क्रीन से tmux में चला गया
मुझे यह काफी समान लगता है, लेकिन बड़े समर्थन के साथ (मैंने नवविराम में भागने के समय की समस्या के कारण स्विच किया - संकल्प केवल टक्स के लिए था)।

दुर्भाग्य से tmux में मैं इसके लिए एक समान कमांड नहीं पा रहा हूँ:

screen -X eval "chdir $(some_dir)"

उपरोक्त आदेश ने GNU स्क्रीन के भीतर से नई विंडो / स्क्रीन / फलक के लिए डिफ़ॉल्ट निर्देशिका को बदल दिया है, इसलिए जब मैंने दबाया Ctrl+ a(tmux Ctrl+ के समान b) - नई विंडो को $(some_dir)निर्देशिका में खोला गया ।

क्या tmux में एक समान बात है?

उत्तर:
मैंने @Lqueryvg उत्तर का उपयोग किया है और इसे @Vincent Nivoliers सुझाव के साथ संयुक्त रूप से टिप्पणी की है और इसने मुझे एक कमांड के लिए एक नया बंधन दिया है attach -c "#{pane_current_path}"जो मेरी वर्तमान निर्देशिका को डिफ़ॉल्ट के रूप में सेट करता है।
धन्यवाद।



धन्यवाद, यह मददगार है। new-window -c "#{pane_current_path}"काम कर रहा है, लेकिन मुझे जिस रास्ते को स्थायी रूप से सेट करने की ज़रूरत है, वह है: मैं / aaa / bbb में एक प्रोजेक्ट में काम कर रहा हूं, लेकिन किसी तरह जब मैं कहने / ccc / ddd का रास्ता बदलता हूं और Cb और c के साथ नई शुरुआत करना चाहता हूं भूमि / आबा / बीब में एक बार। क्या आप इसका कोई हल सोच सकते हैं?
lewiatan

मैं अपने आप में अंतिम तीन लाइनों के जोड़ के साथ व्यक्तिगत रूप से ठीक हूं .tmux.conf। इस तरह मुझे केवल एक बार फोल्डर में जाना है और फिर वहां से अपनी विंडो / स्प्लिट बनाना है, लेकिन मैं मानता हूं कि यह आपकी समस्या का हल नहीं है, इसीलिए मैंने उत्तर नहीं दिया!
विन्सेन्ट निवलियर्स 13

जवाबों:


61
  1. tmuxनिम्नानुसार शुरू करें :

    (cd /aaa/bbb; tmux)
    

    अब, आपके द्वारा बनाई गई कोई भी नई विंडो (या पैन) /aaa/bbb, वर्तमान फलक की वर्तमान निर्देशिका की परवाह किए बिना, निर्देशिका में प्रारंभ होगी ।

  2. यदि आप डिफ़ॉल्ट निर्देशिका को एक बार बदलना tmuxऔर चलाना चाहते हैं, तो उपयोग attach-sessionकरें -c

    इसके लिए tmuxमैन पेज से उद्धरण attach-session:

    -c will set the session working directory (used for new windows)
    to working-directory.
    

    उदाहरण के लिए:

    • Ctrl+b :

    • attach -c /ddd/eee

    नई विंडो (या पैन) अब निर्देशिका में शुरू होगी /ddd/eee, भले ही वर्तमान फलक की निर्देशिका हो।


7
दूसरा विकल्प वही है जो मैं चाहता था। मैं उपयोग करने जा रहा हूं attach -c "#{pane_current_path}"जो स्क्रीन में मेरे जैसा ही होगा। धन्यवाद।
लीवियन

हाँ! attach -cवास्तव में मैं क्या देख रहा था। धन्यवाद
बायरन मैन्सफील्ड

3

उन लोगों के लिए जो चयनित उत्तर प्रदान करता है की तुलना में थोड़ा अधिक संदर्भ की तलाश में हो सकते हैं, StackOverflow पर इस सवाल का एक और अच्छा जवाब था:

https://stackoverflow.com/questions/27307815/how-to-change-the-starting-directory-of-a-tmux-session

जो आपको सत्र छोड़ने के बिना तरीके प्रदान कर सकता है, और उन लोगों के लिए जो मल्टी-सेशन फैशन (जैसे खुद) में tmux का उपयोग करते हैं, उपरोक्त उत्तर कैसे attach/ attach-sessionकाम करता है के रूप में थोड़ा बेहतर संदर्भ देता है ।

विभिन्न तरीकों के लिए उपलब्ध दोनों उत्तरों को देखें जिनका उपयोग किया जा सकता है। मैंने दोनों को सहायक / आनंददायक पाया।

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