Tmux এর বর্তমানে চলমান সংস্করণটি কীভাবে খুঁজে পাব?


138

আমি জানি যে tmux -Vএর সংস্করণ খুঁজে পেতে আমি দৌড়াতে পারিtmux আমার মধ্যে রয়েছে পারি PATH, তবে বর্তমানেtmux যে সংস্করণটি চলছে তা কীভাবে পাব ?


124
প্রিয়tmux -V
গুগলরা

উত্তর:


88

সর্বাধিক সুস্পষ্ট, তবে 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

এবং, ফলস্বরূপ, আপনি বর্তমানে টিএমউক্সের সংস্করণ পাবেন যা ইনস্টল করা ছিল না, এটির নয়।


7
এটি উল্লেখ করার মতো বিষয় যে tmuxপ্রদত্ত প্রক্রিয়া শুরু হওয়ার পর থেকে আপগ্রেড করা থাকলে এটি কাজ করবে না ।
কেউ

3
MacOsX আমি একটি ত্রুটি আছেps: option requires an argument -- u
alexserver

55
সবেমাত্র চালান tmux -V, উবুন্টু এবং ওএসএক্স
মরিচিও পপ্পে

1
এই পদ্ধতিটির জন্য আপনাকে প্রথমে tmux চালানো প্রয়োজন; পরিবর্তে আপনি which tmuxপথটি সন্ধান করতে ব্যবহার করতে পারেন
শিব

1
@ শিভা - প্রশ্ন লেখক বলেছিলেন যে "বর্তমানে টিএমউक्स এর সংস্করণ চলছে?" - সুতরাং tmux ইতিমধ্যে চলছে
vodolaz095

148

একটি মন্তব্যে নির্দেশিত হিসাবে, tmux -Vসংস্করণটি ফেরত দেয়:

$ tmux -V
# tmux 1.8

Centos 7 এবং OSX 10.11.5 এ পরীক্ষিত।


2
এটি নির্বাচিত উত্তর হওয়া উচিত। এটি অ্যামাজন লিনাক্স tested
ব্র্যাডি ডওলিং

7
আমি মনে করি না এটি প্রশ্নের উত্তর দেয়। আমি নিশ্চিত নই কেন এটি এত বেশি রেট দেওয়া হয়েছে। এই কমান্ডটি tmux আমার পথে যা আছে তার সংস্করণটি কেবল ফিরিয়ে দেয়।
কোয়ান্ট

4
এর কারণ এটি টিএমউक्स সংস্করণটি কীভাবে পাবেন তার প্রথম ফলাফল হিসাবে দেখায় ।
ডেরেক 朕 會

খেলোয়াড়কে ঘৃণা করবেন না, গেমটি ঘৃণা করুন
ষাটটি বিট

13

যে টিএমউক্স চলছে তার আসল সংস্করণটি খুঁজতে, আপনাকে টিএমউজের পিআইডি খুঁজে পেতে হবে:

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

6

Tmux সার্ভারটির সংস্করণ পেতে আপনি প্রদর্শন-বার্তা ব্যবহার করতে পারেন।

./tmux2.3 display-message -p "#{version}"

সার্ভারের সংস্করণটি দেখাবে (আমার ক্ষেত্রে 2.7)

-p স্টাডাউটের আউটপুটকে নির্দেশ করবে যাতে আপনি এটির সাথে স্ক্রিপ্ট করতে পারেন এবং ম্যান পৃষ্ঠায় ফর্ম্যাট বিভাগ থেকে {সংস্করণ anything কিছু হতে পারে।

নিম্নলিখিতটি আপনাকে আপনার tmux সার্ভারের এক্সিকিউটেবল দেবে।

realpath /proc/$(tmux display-message -p "#{pid}")/exe

/procহ্যাকটি কেবল লিনাক্স (এবং সম্ভবত সোলারিস ইত্যাদি; তবে সাধারণত বহনযোগ্য নয়)
ট্রিপল

ডিসপ্লে-বার্তা হ'ল সার্ভার সংস্করণ পাওয়ার উপযুক্ত সমাধান!
বেন বার্নার্ড
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.