উত্তর:
সর্বাধিক সুস্পষ্ট, তবে 100% সঠিক উপায় নয় কনসোলে এই আদেশটি কার্যকর করা
$ tmux -V
এবং এই মত আউটপুট প্রাপ্ত tmux 2.9a
tmux ইনস্টল করা সংস্করণ সহ , বর্তমানে চলছে না। 99% ক্ষেত্রে এটি যথেষ্ট, তবে সূক্ষ্ম সূক্ষ্মতা থাকতে পারে।
কমান্ডটি tmux -V
/ usr / bin / tmux বা আপনার PATH ভেরিয়েবলের মধ্যে অন্য কোনও ডিরেক্টরিতে ইনস্টল করা tmux এর সংস্করণ প্রদান করবে। আপনার যদি tmux ইতিমধ্যে চলমান থাকে তবে এটি সম্ভব যে tmux অন্য সংস্করণের বাইনারি এবং বিভিন্ন স্থান থেকে শুরু করা যেতে পারে (উদাহরণস্বরূপ, tmux শুরু করা যেতে পারে /home/user/bin/tmux
)। এই ক্ষেত্রে, আপনাকে কল করতে হবে
$ ps -e | grep tmux
বর্তমানে সমস্ত tmux প্রক্রিয়াগুলির পিআইডি দেখতে। এটি এই জাতীয় কিছু আউটপুট হবে
[vodolaz095@ivory ~]$ ps -e | grep tmux
19699 pts/0 00:00:00 tmux: client
19701 ? 00:00:00 tmux: server
এখানে, 19701 সংখ্যাটি বর্তমানে চলমান tmux সার্ভারের প্রসেস আইডি (পিআইডি) চিত্রিত করে।
Tmux সার্ভারের PID পাওয়ার পরে, আপনি কমান্ডটি চালাতে পারেন
$ lsof -p 19701
ক্রমাগত চলমান tmux সার্ভার প্রক্রিয়া সম্পর্কে তথ্য পেতে (আমার ক্ষেত্রে এটির 1970) এটির মতো কিছু আউটপুট আসবে (চিত্র 1)
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
tmux:\x20 19701 vodolaz095 cwd DIR 8,33 4096 22544385 /home/vodolaz095
tmux:\x20 19701 vodolaz095 rtd DIR 8,1 4096 2 /
tmux:\x20 19701 vodolaz095 txt REG 8,1 677760 3675332 /usr/bin/tmux
tmux:\x20 19701 vodolaz095 mem REG 8,1 6406312 131327 /var/lib/sss/mc/group
যেমন আপনি দেখতে পাচ্ছেন, বর্তমানে চলমান tmux / / usr / bin / tmux বাইনারি থেকে চালানো হয়েছিল।
অথবা, আপনি একটি লাইনার কল করতে পারেন
lsof -p `pgrep 'tmux: server'`
চিত্র 1 এর মতো একই আউটপুট অর্জন করতে
আপনি tmux বাইনারিটিতে চলার পরে চালিয়ে যাচ্ছেন, (আমার ক্ষেত্রে এটি ছিল /usr/bin/tmux
), আপনি এই বাইনারিটিকে ফ্ল্যাগ-ভি দিয়ে কার্যকর করতে পারেন এর সংস্করণ পেতে
/usr/bin/tmux -V
অথবা, যদি tmux সীমাবদ্ধ ব্যবহারকারীর দ্বারা ইনস্টল করা থাকে /home/user/bin/tmux
,
/home/user/bin/tmux -V
এবং, ফলস্বরূপ, আপনি বর্তমানে টিএমউক্সের সংস্করণ পাবেন যা ইনস্টল করা ছিল না, এটির নয়।
tmux
প্রদত্ত প্রক্রিয়া শুরু হওয়ার পর থেকে আপগ্রেড করা থাকলে এটি কাজ করবে না ।
ps: option requires an argument -- u
tmux -V
, উবুন্টু এবং ওএসএক্স
which tmux
পথটি সন্ধান করতে ব্যবহার করতে পারেন
একটি মন্তব্যে নির্দেশিত হিসাবে, tmux -V
সংস্করণটি ফেরত দেয়:
$ tmux -V
# tmux 1.8
Centos 7 এবং OSX 10.11.5 এ পরীক্ষিত।
যে টিএমউক্স চলছে তার আসল সংস্করণটি খুঁজতে, আপনাকে টিএমউজের পিআইডি খুঁজে পেতে হবে:
pgrep tmux
এই তথ্যের সাহায্যে আপনি চালিয়ে সংস্করণটি পরীক্ষা করতে পারেন:
lsof -p $tmuxPID | grep REG | grep -i -e deleted -e "tmux$"
তালিকাভুক্ত tmux ফাইলের পাশে যদি কোনও (মুছে ফেলা) থাকে না, আপনি কেবল সেই ফাইলটি একটি দিয়ে চালাতে পারেন -V
।
যদি এটি "(মুছে ফেলা)" ফাইলগুলিতে ফলাফল করে তবে আপনি একটি পুরানো, আনইনস্টল সংস্করণ চালাচ্ছেন। আপনি যদি লিনাক্সে থাকেন তবে এটি চালিয়ে কী তা বুঝতে পারবেন:
/proc/$tmuxPID/exe -V`
আপনি যদি ওএস এক্স এ থাকেন তবে ফাইলনামের পথে যা কিছু তথ্য রয়েছে তার সাথে আপনি আটকে আছেন, সম্ভবত এর মতো কিছু Cellar/tmux/<version number>/bin/tmux
।
আপনি এই ধাপগুলির অনেকগুলি নিম্নলিখিত ওয়ান-লাইনারে সংযুক্ত করতে পারেন:
for tmuxPID in $(pgrep tmux); do lsof -p $tmuxPID | grep REG | grep -i -e deleted -e "tmux$"; done
অথবা আপনি যদি লিনাক্সে থাকেন তবে এটি সর্বদা কার্যকর হয়:
for tmuxPID in $(pgrep tmux); do /proc/$tmuxPID/exe -V; done
Tmux সার্ভারটির সংস্করণ পেতে আপনি প্রদর্শন-বার্তা ব্যবহার করতে পারেন।
./tmux2.3 display-message -p "#{version}"
সার্ভারের সংস্করণটি দেখাবে (আমার ক্ষেত্রে 2.7)
-p স্টাডাউটের আউটপুটকে নির্দেশ করবে যাতে আপনি এটির সাথে স্ক্রিপ্ট করতে পারেন এবং ম্যান পৃষ্ঠায় ফর্ম্যাট বিভাগ থেকে {সংস্করণ anything কিছু হতে পারে।
নিম্নলিখিতটি আপনাকে আপনার tmux সার্ভারের এক্সিকিউটেবল দেবে।
realpath /proc/$(tmux display-message -p "#{pid}")/exe
/proc
হ্যাকটি কেবল লিনাক্স (এবং সম্ভবত সোলারিস ইত্যাদি; তবে সাধারণত বহনযোগ্য নয়)
tmux -V