اسکریپت نویسی پیشرفته لینوکس- قسمت ۷ – نکات ظریف و مهم

زمان مطالعه: 2 دقیقه
انتشار :
۱۴۰۰-۰۷-۲۳

اسکریپت نویسی پیشرفته لینوکس – نکات ظریف و مهم : قسمت های مفیدی را در مورد اسکریپت نویسی لینوکس پشت سر گذاشتیم. در این قسمت قصد داریم بعضی نکات مهم را که معمولا در کتاب های آموزشی یافت نمیشوند را با شما در میان بگذاریم, تا موقع اسکریپت نویسی به مشکل بر نخورید.

اسکریپت نویسی پیشرفته لینوکس - نکات ظریف و مهم

نکات ظریف و مهم در اسکریپت نویسی پیشرفته لینوکس

نکات مهم در نام گذاری متغیر:

  •             لینوکس یک سری کلمات رزرو شده دارد که نباید در نامگذاری متغیر ها استفاده شود.
  •             از جمله آنها دستورات معمول لینوکس و تعدادی از حروف الفبای انگلیسی است.
  •             لیست کامل کلمات رزرو شده در آدرس زیر قابل مشاهده است:            https://www.gnu.org/software/bash/manual/html_node/Reserved-Word-Index.html
  •             به طور مثال دستورات elif, else, esac تنها کلماتی رزرو شده ای هستند که با E شروع میشوند.
  •             اگر شما متغیر را به صورت case = 10 تعریف کنید, با خطا مواجه خواهید شد. چرا که کلمه case از کلمات رزرو
  •             شده میباشد.
  •             نکته دیگر در نام گذاری متغیر ها این است, که نام متغیر با اعداد شروع نشود.
  •             در نامگذاری متغیر ها از علامت _ (زیرخط) به جای – (خط تیره) استفاده کنید.
  •             فراموش نکنید که در نام گذاری توابع از علامت نقطه ‘.’ و خط تیره(-) استفاده نکنید.

مقایسه مقادیر:

            در دستور های شرطی مانند if, برای مقایسه مقادیر متنی از علامت  =   و برای مقادیر عددی از –eq استفاده کنید.

            مثال:

a=273.0

if [ “$a” = 273 ]

then

.

.

در این شرط, بلوک then هیچ وقت اجرا نخواهد شد, در صورتی که طراحی سایتسئومیخواهید برابر بودن متغیر بالا و عدد ۲۷۳ را درست تشخیص دهد, باید از دستور if [ “$a” -eq 273.0 ] استفاده کنید.

همچنین برای مقایسه کوچکتر یا بزرگتر بودن اعداد بهتر است از –lt و –gt به جای  <  و < استفاده کنید.

دستور

while [ “$number” < 5 ] ممکن است با خطا مواجه شود.

while [ “$number” -lt 5 ]  شرط مناسب تری است.

نوین هاست یار نوین شماست.

بازخوردها
مقالات مرتبط
مزایا و معایب مجازی ساز KVM
مجازی ساز KVM چیست و چه مزایایی دارد؟
[custumexpert]
زمان مطالعه: 4 دقیقه
حافظه NVMe چیست؟
حافظه NVMe چیست و چه مزایایی دارد؟
[custumexpert]
زمان مطالعه: 4 دقیقه