امیرحسین کریم پور
مدیر ارشد توسینسو و متخصص سرویس های مایکروسافت

TERM Variable لینوکس چیست و چه کاربردی دارد ؟

در این مطلب میخواهیم درباره متغیری به نام TERM در لینوکس برای شما عزیزان صحبت کنیم. اگر نمیدانید متغیر محیطی یا Environment Variable چیست پیشنهاد می کنم به مطلب PATH Environment Variable یا متغیر محیطی PATH در سیستم عامل لینوکس چیست و چه کاربردی دارد مراجعه کنید. البته PATH یکی از متغیر های محیطی و البته مهم است که در همه سیستم عامل ها وجود دارد از این رو خواندن مقاله ای که لینک آنرا گذاشتیم درک خوبی از Environment Variable ها به شما می دهد.

دوره های شبکه، برنامه نویسی، مجازی سازی، امنیت، نفوذ و ... با برترین های ایران

بسیاری از برنامه ها در لینوکس از متغیر TERM و دیتابیس آن که در مسیر /etc/termcap/ و یا *//usr/lib/terminfo/ است استفاده می کند تا تصمیم بگیرند که کدام String برای پاک کردن Screen ارسال می شود و یا اینکه حرکت Cursor ماوس چگونه است ، و حتی از String هایی که توسط کاربران برای زدن کلید Backspace و یا Function Key ها استفاده می شود تصمیم گیری می کنند.

چگونگی نمایش دادن رنگ متن در Shell نیز توسط متغیر TERM انجام می شود. برنامه های ساده ای مثل ls که کارش فقط لیست کردن محتویات یک دایرکتوری است چندان به متغیر TERM کاری ندارند اما برای مثال برنامه ای مثل ویرایشگر های متن مانند gedit ، nano ، vi و ... نیاز دارند که بدانند مکان قرار گیری یک خط در بالا یا پایین صفحه نمایش چگونه باید باشد. و یا اینکه cursor ماوس چگونه به بالا ، پایین ، چپ و یا راست میرود. پس دانستید که متغیر محیطی TERM در واقع کارش این است که اطلاعاتی به برنامه ها درباره Terminal می دهد.

نام متغیر TERM بر اساس نوع Terminal مورد استفاده یا vt100 است و یا wyse-75. مقدار این متغیر ابتدا توسط Kernel سیستم عامل لینوکس set می شود ( برای کنسول ها ). معمولا مقدار این متغیر مجددا بوسیله getty ( در همین حد بدانید که getty یک نوع TTY است و TTY یک محیط Text Input//Output است و دستور را از کاربر به عنوان ورودی میگیرد و در خروجی نتیجه را نمایش می دهد ) توسط آرگومان هایی که در etc/ttytype/ یا etc/inittab/ و یا نیز etc/profile/ مشخص شده اند ست می شود. مقدار این متغیر در لینوکس های امروزی یا linux هست و یا xterm. اما در لینوکس های قدیمی مقدار این متغیر console یا con80x25 بود. امیدوارم مورد توجه شما قرار گرفته باشد.


امیرحسین کریم پور
امیرحسین کریم پور

مدیر ارشد توسینسو و متخصص سرویس های مایکروسافت

امیرحسین کریم پور ، مدیر ارشد توسینسو ، متخصص شبکه ، تخصص در حوزه سیستم عامل های کلاینت و سرور مایکروسافت و سرویس های مربوطه ، سیستم عامل لینوکس و... ، سابقه کار با سازمان ها و شرکت های مختلف در زمینه سرویس های مایکروسافت در قالب پروژه ، مشاوره و آموزش. علاقه مند به حوزه امنیت اطلاعات و تست نفوذ سنجی

نظرات