آموزش استفاده از tmux
- جمعه, ۳۰ ارديبهشت ۱۴۰۱، ۰۳:۱۲ ب.ظ
امروز در این پست به معرفی ابزار tmux و نحوه استفاده از آن به شکل مقدماتی و ساده ، می پردازیم.
tmux چیست؟
tmux یک ابزار برای مدیریت پنجره های مختلف تحت ترمینال لینوکس است ، که به ما کمک می کند با استفاده از یک ورودی (ترمینال) بتوانیم چند پروسه و دستور را هم زمان با هم در چند پنجره اجرا کنیم. برای درک بهتر کاربرد این ابزار به این مثال توجه کنید.
فرض کنید که در حال کار با سیستم لینوکسی خود هستید و با استفاده از ترمینال فایرفاکس را اجرا می کنید ، در عین حال نیاز دارید تا با استفاده از ابزار nano یک فایل را ویرایش کنید. (یعنی دو پروسه راه همزمان اجرا کنید). در سیستم هایی مانند اوبونتو که با محیط گرافیکی gnome سر و کار داریم به سادگی یک ترمینال دیگر باز میکنیم یا یک tab برروی ترمینال باز میکنیم. ولی فرض کنید که سیستم گرافیکی در دسترس نباشد. برای مثال داریم از ssh استفاده میکنیم و نمیتوانیم چند کانکشن همزمان داشته باشیم (بهتر است که این کار را نکنیم) اینجا است که tmux به کمک ما می رسد.
یا فرض کنید که با ssh به یک سرور متصل شده ایم و میخواهیم یک دستور و پروسه را اجرا کنیم (یا برنامه ای اجرا کنیم) که نیاز داریم تا این برنامه ها بعد از خروج ما (بستن connection ) همچنان توسط سرور در حال اجرا باشند. باز اینجا tmux به ما کمک میکند تا این کار را انجام دهیم.
ابتدا tmux را نصب کنید
در ابونتو و دبیان:
sudo apt update
sudo apt install tmux
در آرچ لینوکس:
sudo pacman -Sy
sudo pacman -S tmux
نحوه کارکرد کلید ها در tmux
برای استفاده از قابلیت های این ابزار باید از ترکیب چند کلید استفاده شود. برای مثال ctrl+b n به این معنی است که ابتدا کلید ctrl (کنترل کیبورد) و b را همزمان فشار می دهیم و بعد از رها کردن این دو ، دکمه n را میزنیم.
بعد از مطالعه این مقاله با تعدادی از این نوع کلید ها آشنا میشویم و برای به خاطر سپردن هر یک راهی برای شما پیشنهاد میکنم.
استفاده ساده از tmux
به بخش اصلی این مقاله رسیدیم. با استفاده ساده منظور من ، استفاده روزمره است . یعنی مواردی که بیشتر از بقیه به کار می آید ، خیلی وارد جزئیات نمی شویم چون وقت تنگ است! احتمالا در مقاله های تکمیلی استفاده های حرفه ای تر از این برنامه را نیز به شما آموزش دهم.
اجرا tmux
بعد از نصب ، با دستور
tmux
برنامه را اجرا کنید.
با اجرای برنامه شاهد تغییراتی در محیط ترمینال خود هستید. این تغییرات نشانگر آن است که شما در حال استفاده از ترمینال tmux هستید و میتوانید از قابلیت های مختلف آن استفاده کنید.
حال می توانید دستورات را مثل همیشه در ترمینال اجرا کنید ، تمام دستورات مثل قبل است.
فرض میکنیم برنامه ای را اجرا کردید و به دنبال اجرا برنامه دیگری نیز هستید.
برای اجرای دستور جداگانه نیاز داریم تا پنجره جدیدی ایجاد کنیم
با ترکیب کلید های زیر پنجره جدیدی باز کنید
ctrl+b c
ctrl و b را همزمان فشار میدهیم و رها میکنیم و سپس کلید c را میزنیم. c ابتدای کلمهcreate است به معنی ساختن یا خلق کردن ، که در اینجا یک پنجره جدید ساختیم. با انجام موارد ذکر شده شاهد خواهید بود که پنجره قبلی با دستورات قبلی ناپدید شده و پنجره جدیدی باز شده است. (نگران نباشید پنجره قبلی هنوز در دسترس است)
برنامه یا دستور مورد نظرتان را اجرا کنید.
حال میخواهیم به پنجره قبل برگردیم
ctrl+b p
p ابتدای کلمه previous به معنی ((قبلی)) است. با فشردن کلید های ذکر شده شاهد خواهید بود که به پنجره قبل برگشتیم.
برای رفتن به پنجره بعدی از دستور زیر استفاده میکنیم
ctrl+b n
در اینجا n اول کلمه next است که ما را به پنجره بعدی میبرد.
حتما متوجه شده اید که نمیتوانیم متن های قبلی که وارد ترمینال شده را مشاهده کنیم (متن هایی که در سطر های بالاتر هستند)
برای اینکار
ctrl+b [
را میزنیم ، حالا میتواینم با کلید های فلش بالا و پایین یا با اسکرول موس ، سطر های قبلی را مشاهده کنیم.
برای خروج از این حالت و برگشتن به حالت وارد کردن دستور ، Esc (دکمه اسکیپ) را بزنید.
در صورتی که قصد دارید برنامه ها را در حال اجرا بگذارید ولی ارتباط خود را با سرور(کامپیوتر) ببندید از کلید های زیر استفاده کنید
ctrl+b d
d اول کامه detach است که معنی جداسازی. بعد از فشردن این کلید ها ، میبینید که به ترمینال قبلی خود برگشتید و خبری از tmux و دستوراتی که اجرا کرده بودید نیست. (نگران نباشید tmux و دستورات شما همچنان در پس زمینه در حال اجرا هستند).
حالا میخواهیم به پنجره هایی که در tmux باز کرده بودیم برگردیم و وضعیت برنامه هایی که اجرا کرده بودیم را ببینیم.
tmux را با این دستور اجرا کنید:
tmux attach
میبینید که به محیط برنامه برگشته اید و تمام برنامه ها و پنجره های شما قابل مشاهده و در حال اجرا هستند.
برای خروج و بستن پنجره ها و برنامه ها ، از دستور exit استفاده کنید. دقیقا همانند ترمینال معمولی لینوکس.
نتیجه گیری
ابزار tmux ، ابزار فوق العاده و قدرتمندی هست که به ما در مدیریت پنجره ها و استفاده از ترمینال لینوکس خیلی کمک میکند. لازم به ذکر است که این ابزار برای ترمینال termux اندروید هم موجود است. این ابزار قابلیت های فوق العاده دیگری همچون چیدن پنجره ها در کنار یک دیگر و ... را نیز دارد که در صورتی که دوست داشته باشید در پست های بعدی به آن میپردازیم.
هرگونه سوال یا ابهام را نیز میتوانید مطرح کنید و امیدوارم که این مطلب به درد شما خورده باشد. روز خوبی داشته باشید.