برنامه نویسی و مفاهیم رایانه
برنامه نویسی و مفاهیم رایانه
خواندن ۱ دقیقه·۵ سال پیش

متغیر محیطی _$ در یونیکس

در لینوکس و دیگر سیستم عامل های یونیکسی و ویندوز، برخی از متعیرهای محیطی پیش فرض مانند HOME$ و PWD$ هستند که هر کدام کاربردهای ویژه خودشان را دارند. برای نمونه HOME$ در لینوکس یا %home% در ویندوز، به دایرکتوری خانگی کاربری اشاره می کند که هم اکنون به سیستم لاگین کرده است. یا به گفته بهتر، به دایرکتوری خانگی کاربر جاری (فعلی) اشاره دارد.

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

در کد زیر نخست یک دایرکتوری ایجاد کرده ایم و سپس در خط پایین، دستور تغییر دایرکتوری را به همراه متغیر _$ انجام داده ایم. چون برای دستور پیشین، آرگومان تعیین شده که همان مسیر دایرکتوری تازه است، پس این مسیر، پیش روی دستور cd جایگزین مسیر path/to/new_dir/ می شود. به گفته دیگر، انگار دستور cd/path/to/new_dir را انجام داده ایم.

mkdir /path/to/new_dir

cd $_

همچنین دستور پیشین می تواند دستوری در سمت چپ یک کاراکتر کنترلی باشد. در زیر کاراکتر کنترلی && را به کار برده ایم. این کاراکتر کنترلی بررسی می کند که آیا دستور سمت چپش به درستی اجرا شده است و اگر اینگونه باشد، دستور سمت راستش را اجرا می کند.

mkdir /path/to/new_dir && cd $_

لینوکسخط فرمانمتغیر محیطییونیکسمکینتاش
برنامه نویس پایتون و دوستدار سیستم های توزیع شده، دانش داده ها و زبان عبری http://learnhebrew.ir
شاید از این پست‌ها خوشتان بیاید