ورود ثبت نام 021 - 49624
Logo Logo
  • سرور مجازی
    • فروش سرور مجازیسرور مجازی خارج20 لوکیشن ، تحویل فوری
    • فروش سرور مجازیسرور مجازی ایران5 دیتاسنتر ، ترافیک نامحدود
    • فروش سرور گرافیک دارسرور مجازی گرافیک دارمناسب رندر ، ماشین لرنینگ
    • فروش سرور گرافیک دارسرور مجازی تریدآی پی ثابت ، ترافیک نامحدود
    • فروش سرور مجازیسرور مجازی بورسسرعت بالا ، دسترسی آسان
    • فروش سرور مجازیسرور مجازی اقتصادیآی پی ثابت ، قیمت مناسب
  • سرور اختصاصی
    • فروش سرور اختصاصیسرور اختصاصی ایرانپورت 10 گیگ ، سخت افزار بروز
    • فروش سرور اختصاصیسرور اختصاصی خارجلوکیشن های برتر
    • فروش سرور اختصاصیکولوکیشنارائه از 5 دیتاسنتر برتر
  • هاست
    • هاستهاست ایرانبکاپ منظم ، پهنای باند نامحدود
    • هاستهاست خارجبکاپ منظم ، ترافیک نامحدود
    • فروش اس اس الگواهینامه SSLدامنه های داخلی و خارجی
  • دامنه
  • دانشنامه
  • تماس با ما

لینک های مفید

  • About

اسکریپت نویسی شل لینوکس برای وبمسترها – قسمت ۱

  • خانه
  • ادامه مطلب
اسکریپت نویسی شل لینوکس - نوین هاست - قسمت اول
مهر 13 1400
  • وبلاگ

 

اسکریپت نویسی شل لینوکس برای وبمسترها – قسمت ۱

در قسمت قبل با ویرایشگر vi و اولین مراحل نوشتن یک اسکریپت آشنا شدیم,

در این مرحله قصد داریم ایجاد متغیر, ورودی گرفتن برای اسکریپت و چاپ متغیر در خروجی را توضیح دهیم.

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

تعریف متغیر:

برخلاف بسیاری از زبان های برنامه نویسی, نیازی نیست در اسکریپت نویسی لینوکس نوع متغیر را تعیین کنید.

کافیست در اسکریپت بنویسید var1=value1 تا متغیری با نام var1 و مقدار value1   ایجاد شود.

اگر میخواهید خروجی یک دستور در متغیر قرار گیرد, به این صورت عمل کنید: var=$(command) با اینکار خروجی دستور command  در متغیر var قرار میگیرد.

به طور مثال دستور

ipadd=$(ifconfig | grep ‘inet’| grep -v ‘127.0.0.1’| grep -v ‘inet6’ | sed ‘s/  / /g’ | tr -s ‘ ‘ | cut -d ‘ ‘ -f 3)

آی پی آدرس سیستم لینوکسی را در متغیر ipadd قرار میدهد.(در سرور redhat آزمایش شده).

دریافت ورودی از کاربر:

دریافت ورودی به دو صورت انجام میگیرد:

دریافت ورودی از کاربر قبل اجرای برنامه:

  • شما میتوانید مقادیری را به عنوان پارامتر و آپشن به برنامه تحویل دهید. وقتی در خط فرمان مینویسید command val1 val2
  • مقادیر val1 و val2 را به اسکریپت command تحویل داده اید.
  • برای خواندن این مقادیر در اسکریپت کافیست از place holder های $۰,$۱,$۲,$۳ . . . . استفاده نمایید.

به این مثال توجه کنید:

[me@linuxbox me]$ some_program word1 word2 word3

  • $۰ = “some_program”
  • $۱ = “word1”
  • $۲ = “word2”
  • $۳ = “word3”

 میبینید که placeholder    $۰ نام برنامه, و $۱ اولین آرگومان را در بر گرفته است, برای آرگومان های بعدی به مراتب از جا نگهدار های $۲ , $۳ و . . .   استفاده میکنیم.(در قسمت های آینده بررسی این مقادیر با استفاده از دستورات شرطی توضیح داده خواهد شد.)

اگر میخواهید بدانید چه تعداد آرگومان به اسکریپت تحویل شده (در مثال قبلی سه تا) میتوانید از متغیر $# استفاده کنید.

اگر در مثال بالا محتوی اسکریپت some_program  به صورت زیر باشد:

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

در صورتی که برنامه را با دستور bash some_program word1 word2 word3 اجرا کنیم, خروجی به صورت

some_program

word1

word2

word3

۳

خواهد بود, سطر اول نام برنامه, سطر دوم ارگومان اول , سطر چهارم آرگومان دوم و سطر آخر تعداد آرگومان ها را نشان میدهد.(در قسمت دستورات حلقه از $# برای گرفتن همه آرگومان ها استفاده خواهیم کرد.)

و در صورتی که به صورت bash some_program word1 word2 اجرا کنیم, یعنی به جای سه آرگومان دو آرگومان ارسال کنیم, خروجی به صورت

some_program

word1

word2

۲

خواهد بود. مشاهده میکنید که جای word3 خالی است و تعداد آرگومان ها به ۲ تغییر کرده است.

دریافت ورودی از کاربر در حال اجرای برنامه:

بعضی اوقات لازم است در حین اجرای برنامه مقداری را از کاربر دریافت کنیم یا سوالی از کاربر بپرسیم:

برای اینکار از دستور read var استفاده میکنیم, اینکار باعث میشود مقدار وارد شده توسط کاربر در متغیری به نام var  ذخیره گردد, متغیر var  را میتوانید با هر نام دل خواهی که از قوانین نام گذاری متغیر های پیروی کند ایجاد کنید.(مهم ترین قوانین: در نام فاصله نباشد, نام متغیر با عدد شروع نشود(

به این مثال توجه کنید:

echo -n “Enter MAC Address > “

read hwa

echo “Mac Address: “$hwa

اسکریپت بالا هنگام اجرا شدن مک آدرس را از کاربر میخواهد و کاربر با وارد کردن مقدار مورد نظر و فشردن اینتر مقدار را تحویل میدهد, این مقدار در متغیر hwa ذخیره شده و سپس توسط دستور echo در خروجی نمایش داده میشود.

برای چاپ متغیر در خروجی از دستور

Echo “someword “$var

استفاده کنید, با اینکار در خروجی مقدار متغیر var   پس از some word چاپ میشود, در صورتی که میخواهید فقط مقدار متغیر چاپ شود کافیست بنویسید echo $var.

امتیاز دهید!
نوشته قبلی نوشته بعدی

درج نظر لغو پاسخ

نوشته‌های تازه

  • URL چیست و چه کاربرد هایی دارد ؟
  • مقدمه ای بر HTML5 و مفاهیم مربوطه
  • آشنایی با windows server 2012 | بخش دوم
  • آشنایی با ویندوز سرور ۲۰۱۲
  • موتور های جستحو چگونه کار می کنند ؟

آخرین دیدگاه‌ها

  1. محمدمهدی در آموزش نصب wordpress ، نصب آسان و سریع وردپرس در ۵ دقیقه
  2. pars-design.ir در اسکن امنیتی ورد پرس با WPscan + فیلم
  3. نوین هاست در اتصال به سرور های لینوکسی + آموزش
  4. یاسین در اتصال به سرور های لینوکسی + آموزش
  5. نوین هاست در اصطلاحات Docker

دسته‌ها

  • راهکار های سازمانی
  • سرور مجازی
  • لایسنس
  • محصولات
  • نمایندگی فروش
  • وبلاگ

برچسب‌ها

اموزش نصب ssl در ویندوز سرور اموزش نصب اس اس ال رایگان اموزش وصل شدن به سرور نحوه اتصال به سرور با موبایل
Logo


تلفن : 49624 – 021
تلفن : 91070308 – 021
admin@novinhost.org
تلگرام : novinhost_org@
کانال تلگرام : novinhost@
تهران ، فلکه دوم صادقیه ، بلوار آیت الله کاشانی ، روبروی پمپ بنزین ، پلاک 160 طبقه 8

سرور مجازی

  • سرور مجازی آلمان
  • سرور مجازی فرانسه
  • سرور مجازی انگلیس
  • سرور مجازی آمریکا
  • سرور مجازی کانادا
  • سرور مجازی هلند
  • سرور مجازی فنلاند

سرور اختصاصی

  • سرور اختصاصی ایران
  • سرور اختصاصی برج میلاد
  • سرور اختصاصی تبیان
  • سرور اختصاصی خارج
  • سرور اختصاصی آلمان
  • سرور اختصاصی فرانسه
  • سرور اختصاصی آمریکا

نمادها و مجوزها

نمادها و مجوزهانظام صنفی

  • شبکه های اجتماعی نوین هاست را در شبکه های اجتماعی حتما دنبال کنید!

تمام حقوق این سایت محفوظ و متعلق به نوین هاست می باشد.

  • قوانین سرویس دهی
  • درباره ما
  • شماره حساب ها
  • استخدام