وبلاگ رسانگار
با ما حرفه ای باشید

سرور مجازی NVMe

متغیرهای محیط Bash چیست؟

0 2
زمان لازم برای مطالعه: 4 دقیقه


در محاسبات، متغیر اصطلاحی است که می توان از آن برای تخصیص هر مقدار به آن یا استفاده پویا از متغیر در انجام کار خاص استفاده کرد. به عنوان مثال، برنامه نویسان متغیرها را با هر نمادی (عمدتا حروف الفبا) اعلام می کنند و می توانند به عنوان یک مقدار متفاوت در چندین برنامه استفاده شوند. سیستم عامل های ما دارای لیستی از متغیرهایی هستند که برای دستکاری برنامه ها یا فرآیندهای رایانه استفاده می شوند و به عنوان متغیرهای محیطی شناخته می شوند. این متغیرها در هر نوع سیستم‌عاملی قرار دارند و می‌توان آنها را مانند سایر متغیرها در رایانه شخصی (ایجاد، ویرایش، حذف،) مدیریت کرد. لینوکس نیز مانند سایر سیستم عامل ها دارای متغیرهای محیطی است و این متغیرها در چندین اسکریپت و برنامه در محیط لینوکس استفاده می شوند. برخلاف این متغیرهای محیطی، یک نوع متغیر به نام متغیرهای پوسته نیز در لینوکس وجود دارد، اما آنها در نمونه فعلی پوسته فعال هستند، پس از پایان محیط پوسته، متغیر پوسته نیز پاک می‌شود. در این راهنما به طور مختصر توضیح خواهیم داد bash متغیرهای محیطی: قبل از یک بینش عمیق، اجازه دهید به اصول متغیرهای محیطی بپردازیم:

مبانی متغیرهای محیط Bash

این بخش شامل اطلاعات اولیه و عملیات مربوط به متغیرهای محیطی و روش بازی با این متغیرها است:

روش چاپ متغیرهای محیط موجود

تمام متغیرهای تعریف شده در داخل سیستم عامل ذخیره می شوند و با استفاده از یکی از دستورات زیر قابل چاپ هستند:

$ env

متغیرهای محیط Bash چیست؟

یا:

$ printenv

متغیرهای محیط Bash چیست؟متغیرهای محیط Bash چیست؟

اگر مقدار یک متغیر واحد/خاص مورد نیاز باشد، از نحو زیر استفاده می شود:

$ اکو $[VARIABLE]

علاوه بر این، اگر می خواهید لیست متغیرهای پوسته موجود را به همراه متغیرهای محیطی چاپ کنید. سپس برای این کار از دستور زیر استفاده کنید:

$ تنظیم

متغیرهای محیط Bash چیست؟متغیرهای محیط Bash چیست؟

printenv” و ”envدستور ” متغیرهای محیطی را چاپ کرده اند که برای نمایش اطلاعات خاص مربوط به سیستم شما استفاده می شود. ما متداول ترین متغیرهای محیطی را فهرست کرده ایم:

پیشنهاد می‌کنیم بخوانید:  فرماندهی بش یونیک
متغیر شرح
کاربر: کاربری که در حال حاضر وارد شده است
پوسته: مسیر پوسته کاربر
ویراستار: نام ویرایشگر فایل پیش فرض را نمایش می دهد
LOGNAME: این متغیر env نام کاربر فعلی را چاپ می کند
UID: شناسه منحصر به فرد یک کاربر
HOSTNAME: نام میزبان دستگاه کاربر در شبکه
دما: محل دایرکتوری فایل های موقت
PWD: فهرست عملیاتی فعلی terminal
زبان: این متغیر env تنظیمات زبان فعلی را نشان می دهد
مدت، اصطلاح: جاری terminal تقلید

چگونه یک متغیر محیطی را تعریف کنیم

در قسمت قبلی این نوشتار، انواع متغیرها در لینوکس را مورد بحث قرار دادیم: پوسته و محیط. ما نباید هر دو متغیر را با هم مخلوط کنیم. و مشاهده می شود که اعلام یک متغیر محیطی مشکل است process و برخورد می تواند با متغیرهای پوسته/محلی رخ دهد:

شما می توانید یک متغیر جدید تنظیم کنید و سینتکس برای انجام چنین عملی در زیر نوشته شده است:

[VARIABLE]=[variable_value]

به یاد داشته باشید که نحو بالا یک متغیر پوسته ایجاد می کند و هنگامی که از نمونه پوسته خارج شدید، نمی توانید از متغیر استفاده کنید.

بنابراین، برای ایجاد یک متغیر محیطی، کاربر باید این مراحل را دنبال کند:

مرحله 1: متغیر پوسته را صادر کنید : برای تعریف متغیرهای محیطی، باید ” را باز کنید.bashrc” فایل با ویرایشگر نانو (یا می توانید از هر ویرایشگر دیگری استفاده کنید) با کمک دستور زیر:

$ سودو نانو ~/.bashrc

هنگامی که با فرمت قابل ویرایش باز شد، می توانید متغیر محیطی را با کمک تعریف کنید export کلمه کلیدی و از متن زیر در انتهای فایل برای اعلام آن استفاده کنید:

export ENV=”متغیر محیط جدید”

متغیرهای محیط Bash چیست؟متغیرهای محیط Bash چیست؟

مرحله 2: فایل ~/.bashrc را در حافظه بارگذاری کنید : حتی اگر export کلمه کلیدی استفاده می شود، شما باید فایل ./bashrc را در حافظه بارگذاری کنید تا تغییرات با موفقیت انجام شود. برای این کار دستور زیر را اجرا کنید:

$ منبع ~/.bashrc

متغیرهای محیط Bash چیست؟متغیرهای محیط Bash چیست؟

روش اعلان دائمی متغیرهای محیط برای همه کاربران

برای تنظیم دائمی متغیر محیط برای همه کاربران؛ شما باید یک جدید ایجاد کنید.sh” فایل در دایرکتوری ”/etc/profile.d” و فایل را با ویرایشگر نانو ویرایش کنید: به عنوان مثال، دستور ذکر شده در زیر فایل را ایجاد و ویرایش می کند.perm.sh”:

$ سودو نانو /و غیره/profile.d/perm.sh

و خط زیر را در آن فایل بنویسید تا یک متغیر دائمی ایجاد شود:

export دائمی= “یک env متغیر برای همه کاربران

متغیرهای محیط Bash چیست؟متغیرهای محیط Bash چیست؟

پس از ایجاد تغییر، “Ctrl+S” برای ذخیره فایل و همچنین بارگذاری مجدد فایل در سیستم:

$ منبع /و غیره/profile.d/perm.sh

متغیرهای محیط Bash چیست؟متغیرهای محیط Bash چیست؟

روش تنظیم متغیر محیط گسترده سیستم

برای تنظیم یک متغیر محیطی که در سطح سیستم در دسترس باشد، باید به فایل «دسترسی داشته باشید./etc/محیط” و مجوز ویرایش (با استفاده از ویرایشگر نانو) فایل را بگیرید و دستور زیر را در انتهای فایل بنویسید:

VARIABLE_NAME=”VALUE”

متوجه خواهید شد که هنگام اعلام این سیستم متغیر محیطی گسترده export قبل از اعلان متغیر نیازی به نوشتن کلمه کلیدی نیست.

پیشنهاد می‌کنیم بخوانید:  چگونه یک اسکریپت شل را به عنوان یک کاربر متفاوت اجرا کنیم

روش حذف یک متغیر محیطی

اگر می خواهید متغیر محیطی را حذف کنید، می توانید از نحو ذکر شده در زیر برای تنظیم آن متغیر خاص استفاده کنید:

$ تنظیم نشده [VARIABLE]

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

نتیجه

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

برای نگارش بخشهایی از این متن ممکن است از ترجمه ماشینی یا هوش مصنوعی GPT استفاده شده باشد
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم

زمان انتشار: 1402-12-30 14:31:04

امتیاز شما به این مطلب
دیدگاه شما در خصوص مطلب چیست ؟

آدرس ایمیل شما منتشر نخواهد شد.

لطفا دیدگاه خود را با احترام به دیدگاه های دیگران و با توجه به محتوای مطلب درج کنید