آشنایی با tmux در لینوکس

با نام خدا، سلام و درود، این آموزش ها صرفا برای دوستان مبتدی هست که تازه شروع به کار با لینوکس کردند و در مسیر شروع کار قرار دارند. آموزش امروز در مورد TMUX (تیماکس) هست که به قول خودشون یه مالتی پلکسر برای ترمینال محسوب می شوند. (مرجع گیت هاب).

به شخصه میگم که اگر سمت tmux برید بعید میدونم ازش بدتون بیاد و یه جورایی وابسته بهش می شید. 🙂

نصب tmux روی اوبونتو:

برای نصب کافیه از دستور زیر در ترمینال استفاده کنید:

sudo apt-get install tmux

برای نصب tmux روی مک نیز دستور زیر کارتون رو راه می اندازه:

brew install tmux

اما برای شروع باید یک session بسازید، برای این کار کافیه داخل ترمینال دستور tmux را بنویسید. (تبریک در حال حاضر وارد محیط multiplex شده ترمینالتون توسط tmux شدید، تصویر زیر)

ساخت session در tmux

خب اولین چیزی که نمود میکنه یک status bar در پایین ترمینال نمایان میشه. که سمت چپ نشان دهنده پنجره ای است که در حال حاضر بازه. و تاریخ و زمان و نیز کاربری که د رحال استفاده از ترمینال هست رو نوشته. که این status bar نیز میتونه شخصی سازی بشه (برای مثال درصد باتری رو نشون بده یا رویداد های پیش رو رو اعلام کنه و …)

شورتکات های tmux:

اول از همه tmux  یک prefix داره که قبل از شورت کات مورد نظر باید بزنیم. ctrl+ b ، که از این به بعد c-b می نویسمش.

حال قدم اول تقسیم کردن ترمینال به چند صفحه:

تقسیم میتونه به صورت افقی باشه یا عمودی. برای تقسیم افقی کافیه بعد از prefix  از ٪ استفاده کنید (shift + 5) و برای تقسیم عمودی باید ”  را بعد از prefix  بزنیم (shift + ‘ )

در تصویر زیر مشاهده می کنید که چه کارایی میشه با تقسیم صفحه یا pane انجام داد:

تقسم صفحه در tmux
تقسم صفحه در tmux

برای جابجایی بین صفحات تقسیم شده در tmux  کفیه prefix را زده و سپس از کلید های جهت نمای کیبورد استفاده کنید. برای رفتن به صفحه سمت راست کافیه ctrl + b را زده و سپس جهت نمای راست را بزنیم.

برای بستن یک صفحه نیز کافیه ctrl + d را بزنید.

و اما برای ساخت پنجره جدید کافیه بعد از زدن prefix  دکمه c از کیبورد رو بزنید. با این کار یه پنجره جدید ساخته شده و برای سوییچ کردن بین پنجره ها کافیه بعد از prefix دکمه p از کیبورد رو بزنید.

برای نمایش تمامی کارهای tmux و شورت کات هایشان کافیه بعد از prefix  علامت سوال را بزنید (shift+/)

اسکرول کردن در صفحه یا pane در tmux : برای این کار کافیه پس از زدن prefix دکمه ]  را بزنید و پس از اسکرول کردن برای خروج از حالت اسکرول q را بزنید.

فعال سازی اسکرول ماوس در Tmux:

البته می توانید اسکرول کردن ماوس را به طور کلی فعال کنید و نیازی به زدن پرفیکس و غیره نباشد، برای این کار ابتدا باید وارد حالت دستوری شوید، برای این کار ابتدا prefix را زده و سپس : را بزنید (پایین ترمینال : ظاهر می شود)، سپس دستور زیر را تایپ کنید و enter بزنید :

set mouse on

جابجایی صفحات – قطعات (swapکردن paneها) : برای این کار کافیست بعد از زدن prefix دکمه های alt و o را هم زمان فشار دهید با این کار اگه دو صفحه افقی داشته باشید، بالایی میاد پایین و پایینی میره بالا

تغییر سایز pane در tmux

برای این کار کافیست بعد از زدن prefix با گرفتن ctrl و کلید های جهت نما سایز صفحه (pane) مورد نظرتان را کوچک یا بزرگ کنید.

یک سری شورتکات داخل وبسایت tmux cheat sheet دیدم. تصیم گرفتم داخل این مقاله از اونها نیز استفاده کنم ، البته همون طور که تا اینجای کار مشخص هست من تخصصی به ویژگی های Tmux از جمله session ها نپرداختم و بیشتر به بعد ظاهری که کارها و کامند لاین ها را ساده تر کنه پرداختم و حتما بعدا یه مقاله بررسی ویژگی های حرفه ای Tmuxخواهم نوشت.

کار با پنجره (Window):

  • ساخت پنجره جدید
  • [keybt]Ctrl [/keybt] + [keybt]b [/keybt] [keybt]c [/keybt]
  • رفتن به پنجره قبلی
  • [keybt]Ctrl [/keybt] + [keybt]b [/keybt] [keybt]p[/keybt]
  • رفتن به پنجره بعدی
  • [keybt]Ctrl [/keybt] + [keybt]b [/keybt] [keybt]n [/keybt]
  • بستن پنجره فعلی
  • [keybt]Ctrl [/keybt] + [keybt]b [/keybt] [keybt]& [/keybt]
  • تغییر نام پنجره
  • [keybt]Ctrl [/keybt] + [keybt]b [/keybt] [keybt],[/keybt]

کار با قطعه (pane):

  • زوم کردن روی pane انتخاب شده (قطعه انتخاب شده را فول اسکرین می کند)
  • [keybt]Ctrl [/keybt] + [keybt]b [/keybt] [keybt]z[/keybt]
  • تبدیل قطعه (pane) به پنجره (window)
  • [keybt]Ctrl [/keybt] + [keybt]b [/keybt] [keybt]![/keybt]
  • رفتن به آخرین قطعه فعال
  • [keybt]Ctrl [/keybt] + [keybt]b [/keybt] [keybt];/keybt]
  • فتن به قطعه بعدی
  • [keybt]Ctrl [/keybt] + [keybt]b [/keybt] [keybt]o/keybt]