এখানে বেশ কয়েকটি উত্তর রয়েছে: /unix/12032/create-new-window-with-current-directory-in-tmux
সংক্ষেপে:
tmux এফএকিউ থেকে, একটি অবরুদ্ধ (তবে খুব সাধারণ এবং মোটামুটি শেল স্বতন্ত্র) উপায়:
- বর্তমান উইন্ডোর একই ডিরেক্টরিতে আমি কীভাবে একটি নতুন উইন্ডো খুলতে পারি?
একটি বিকল্প হ'ল উইন্ডোতে "টিএমইউক্স = টিএমউক্স" চালানো। তবে, এটি কেবল তখনই কাজ করে যদি কোনও কমান্ড চলমান না থাকে, যাতে আপনি কমান্ডটি ইনপুট করতে পারেন।
একটি কর্মতান্ত্রিকতা হল পরিবেশগত পরিবর্তনের মাধ্যমে tmux কে বর্তমান পথ সম্পর্কে জানানো। এটি করতে, নিম্নলিখিত কমান্ডটি ব্যবহার করুন:
[ -n "$TMUX" ] && tmux setenv TMUXPWD_$(tmux display -p "#I") $PWD
যা বর্তমান ডিরেক্টরিটির পথে TMUXPWD_i (যেখানে আমি বর্তমান উইন্ডোর সংখ্যা) সেট করে। এই কমান্ডটি PS1 এ যুক্ত করা যেতে পারে, উদাহরণস্বরূপ:
PS1='$([ -n "$TMUX" ] && tmux setenv TMUXPWD_$(tmux display -p "#I") $PWD)\h$ '
যখন একটি নতুন উইন্ডো তৈরি করা হয়, তখন শেলটি ডিরেক্টরি পরিবর্তন করতে বলা উচিত। আপনি একটি নতুন বাঁধার সংজ্ঞা দিতে পারেন (উদাহরণস্বরূপ, যদি GNU ব্যাশ ব্যবহার করা হয়):
bind-key C-c run-shell 'tmux neww "cd $(tmux display -p "\$TMUXPWD_#I"); exec bash"'
বর্তমানে কোনও কমান্ডটি টার্মিনালে চলমান থাকলেও এই সমাধানটি কাজ করবে, তবে এটি অন্যটির সাথে সজ্জিত উইন্ডো থেকে কাজ করবে না কারণ একটি স্বাপের পরে TMUXPWD_i আপডেট হবে না। তবে, একবার নতুন প্রম্পট প্রদর্শিত হলে, TMUXPWD_i সঠিকভাবে আপডেট হয়।
কেবল আপনার জন্য উপযুক্ত হিসাবে শেলের কলগুলি প্রতিস্থাপন করুন।
এছাড়াও, স্পষ্টতই tmux- র নতুন সংস্করণগুলিতে এটি একটি কমান্ড দিয়ে সম্বোধন করেছে
tmux নতুন উইন্ডো
পুরানো সংস্করণগুলি এভাবে কাজ করার জন্য দাবি করা হয়:
কলিং
tmux neww
আপনার শেল থেকে dir tmux খুলবে।
আপনি যদি tmux- এ বর্তমান ওয়ার্কিং ডিরেক্টরি থেকে নতুন উইন্ডো বা প্যানগুলি খুলতে সক্ষম হতে চান তবে তার পরিবর্তে আপনার উচিত:
tmux সেট-অপশন ডিফল্ট-পাথ "$ PWD"