از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
Bash If Variable is Empty Do Actions
سرفصلهای مطلب
برنامه نویسی Bash یکی از مزایای استفاده از لینوکس است. این به ما اجازه می دهد تا دستورات و ابزارهای سفارشی سازی شده را برای خودکارسازی کارهای روزانه خود ایجاد کنیم. مانند بسیاری از زبان های برنامه نویسی، Bash به ما دستورات شرطی می دهد تا شرایط خاص را بررسی کرده و بر اساس اقدامات انجام دهیم روی نتیجه.
این آموزش به شما نشان می دهد که چگونه از عبارات شرطی برای بررسی خالی بودن یک متغیر و سپس انجام یک عمل بعد از واقعیت استفاده کنید. چنین اقداماتی می تواند شامل حلقه زدن یک بلوک کد باشد تا زمانی که متغیر خالی نباشد، از آن خارج شوید یا به سادگی به کاربر هشدار دهد که متغیر خالی است.
قبل از شروع، اگر با اسکریپت نویسی اولیه Bash آشنا باشید مفید خواهد بود.
Bash Basic – متغیرهای 101
متغیرها بلوک های اصلی هر زبان برنامه نویسی واقعی هستند و Bash از متغیرها استفاده می کند. متغیرها محفظه های داده ای هستند که برای ذخیره مقادیر برای استفاده در بخش های بعدی برنامه استفاده می شوند.
برای ایجاد یک متغیر ساده در Bash از نام متغیر استفاده می کنیم.
مثلا:
$i_am
هنگامی که متغیر را مقدار دهی اولیه کردید، می توانید با استفاده از علامت مساوی، مقدار را به آن اختصاص دهید:
من هستم=اوبونتو
پس از اعلام و تخصیص، می توانید آن را با ارجاع به نام آن به صورت زیر فراخوانی کنید:
echo $i_am
این مقدار ذخیره شده در متغیر را برمی گرداند، همانطور که در تصویر زیر نشان داده شده است.
توجه داشته باشید: ارجاع به یک متغیر در هر دو کوتیشن و مضاعف نتایج متفاوتی را به دست می دهد. یک متغیر در داخل کوتیشنهای تکی تبدیل به یک رشته واقعی میشود، در حالی که در یک نقلقول دوگانه، رفتار یک متغیر را دریافت میکند.
در اینجا یک مثال است:
اکنون که اصول اولیه متغیرها را در Bash داریم، میتوانیم به شرطیها و بررسی یک متغیر خالی ادامه دهیم.
برای راهنمایی دقیق روی چگونه ایجاد کنیم bash متغیرها، منبع زیر را در نظر بگیرید:
https://linuzhint.com/variables_bash/
مبانی Bash – اگر عبارات
اگر دستورات یکی دیگر از بلوک های برنامه نویسی اساسی باشند و Bash بدون آنها یک فلج خواهد بود. آنها به ما اجازه می دهند در صورت درست یا نادرست بودن یک شرط، یک عمل را انجام دهیم.
اجازه دهید خلاصه ای از روش استفاده از Bash if, if…else و if…elif…else را مرور کنیم.
اگر اسوصیت نامه
نحو کلی برای استفاده از دستور if در Bash به شرح زیر است:
اگر {وضعیت}
سپس
انجام دادن
فی
دستور if را با فراخوانی کلمه کلیدی if شروع می کنیم. سپس با تعیین شرط بررسی دنبال می کنیم. شرط می تواند یک عبارت ساده یا پیچیده باشد تا زمانی که به درست یا نادرست ارزیابی شود.
در مرحله بعد، کلمه کلیدی را تنظیم می کنیم که بلوک کد را مشخص می کند تا در صورتی که شرط به درستی ارزیابی شود اجرا شود.
در نهایت دستور if را با استفاده از کلمه کلیدی fi می بندیم.
اگر … اظهارات دیگر
آ bash دستور if…else یک عمل اضافی را مشخص می کند اگر شرط به نادرست ارزیابی شود. نحو کلی عبارت است از:
اگر {وضعیت}
سپس
انجام دادن
دیگر
انجام دادن
فی
یک مثال استفاده
به من اجازه دهید از یک مثال ساده برای نشان دادن استفاده از دستورات if استفاده کنم.
دستور if به شکل زیر است:
تعداد=1
اگر [[ $num -gt5 ]]
سپس
echo “تعداد $ بزرگتر از 5 اینچ است
دیگر
echo “تعداد $ کمتر از 5 اینچ است
فی
خروجی مطابق شکل زیر است:
از آنجایی که ما اکنون اصول اولیه دستورات if را داریم، اجازه دهید این آموزش را ادامه دهیم.
بررسی کنید که آیا بیانیه ها در جزئیات زیر هستند:
https://linuzhint.com/bash_conditional_statement/
چگونه بررسی کنیم که آیا متغیر خالی است یا خیر
یک راه رایج و ساده برای بررسی خالی بودن یک متغیر، استفاده از گزینه -z در عبارت شرط است.
-z $var اگر متغیر خالی باشد true و در غیر این صورت false بر می گرداند.
نحو کلی برای چنین آزمایشی به شرح زیر است:
اگر [[ -z $var ]]
سپس
انجام دادن
دیگر
انجام دادن
فی
نمونه اسکریپت
اجازه دهید یک اسکریپت ساده را نشان دهیم که دستور cd را شبیه سازی می کند و دایرکتوری مشخص شده را هدایت می کند.
اسکریپت زیر را در نظر بگیرید:
echo “مسیری را برای پیمایش به: وارد کنید”
خواندن _مسیر
در حالی که [[ -z $_path ]]; انجام دادن
echo “لطفا یک مسیر ارائه دهید”
انجام شده
echo “در حال پیمایش به $_path“
سی دی $_path
هنگامی که کوئری فوق را اجرا می کنیم، خروجی را مطابق شکل زیر دریافت می کنیم.
اسکریپت با درخواست از کاربر برای وارد کردن دایرکتوری برای پیمایش شروع می شود. سپس بررسی می کند که آیا متغیر خالی است یا خیر. اگر خالی باشد، به صورت بازگشتی از کاربر یک مسیر می خواهد تا زمانی که متغیر خالی نباشد.
هنگامی که مسیر در دسترس است، به دایرکتوری set هدایت می شود و وضعیت را چاپ می کند.
نتیجه
این آموزش کوتاه به شما نشان می دهد که چگونه با استفاده از پرچم -z، خالی بودن یک متغیر را بررسی کنید. این بررسی می کند که آیا طول متغیر 0 است و اگر 0 باشد، متغیر خالی است. زمانی که نیاز دارید قبل از ادامه دادن مقدار یک متغیر درست باشد، این می تواند بسیار قدرتمند باشد.
همچنین میتوانید عبارت بالا را با عبارات دیگر ترکیب کنید تا در صورت خالی یا نبودن متغیر، یک ابزار پیچیده ایجاد کنید.
با تشکر از شما، و زمان اسکریپت مبارک!
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم
زمان انتشار: 1402-12-30 20:59:03