LINUX

آموزش لینوکس

LINUX

آموزش لینوکس

LINUX

این وبلاگ به بحث پیرامون لینوکس و امنیت و زبان برنامه نویسی تحت لینوکس می پردازد.

طبقه بندی موضوعی

۴ مطلب با کلمه‌ی کلیدی «بش» ثبت شده است

امروز تصمیم دارم راجع به اتخاذ تصمیم در اسکریپت نویسی به زبان shell یا همون bash ی توضیحاتی بدم. در شل دو حالت کلی وجود داره.

۱) if else

۲) case esac


عبارات if else

امروز من مورد یک رو که همون عبارت if else هست رو توضیح میدم. خود این مساله هم چند حالت داره که خدمتتون میگم:


۱) if fi

این بخش ساده ترین حالت جملات شرطی هست که ابتدای اون کلمه if و انتها باید fi آورده بشه. قاعده کلی استفاده از اون به صورت زیر است:

if [ expression ]
then
   Statement(s) to be executed if expression is true
fi


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

۰ نظر موافقین ۴ مخالفین ۰ ۲۴ مرداد ۹۳ ، ۱۶:۲۶
مرتضی

آرایه های در shell قادر به ذخیره مقادیر هستند به این معنی که هر اندیس آرایه یک مقدار رو میتونه در خودش ذخیره کنه. shell میتونه مقادیر مختلفی از آرایه ها رو در خودش ذخیره کنه . در اصل آرایه ها گروهی از متغیرها هستند. به جای اینکه نیاز باشه برای هر متغیر هر بار یک نام انتخاب بشه میتونید اونها رو با اندیس های مشخصی انتخاب کنید و هر زمان که نیاز بود اون ها رو صدا بزنید.


تعریف آرایه ها

برای تعریف کردن آرایه ها در bash شما میتونید به صورت زیر برای اندیس های مختلف مقادیری رو تعیین کنید:

NAME[0]="Muhammad"
NAME[1]="Ali"
NAME[2]="Zahra"
NAME[3]="Hassan"
NAME[4]="Hossein"


برای صدا زدن هر یک از اون ها شما میتونید مثلا به صورت زیر عمل کنید:

$ echo ${NAME[0]}
Muhammad

۰ نظر موافقین ۰ مخالفین ۰ ۰۹ تیر ۹۳ ، ۱۴:۱۰
مرتضی
در بخش قبل به توضیحی درباره متغیرها پرداختم و الان میخوام به بررسی متغیرهای مخصوصی در زبان bash بپردازم.
برای مثال اگر میخواین pid شل که در حال اجراست رو در بیارید میتونید به صورت زیر عمل کنید:
$ echo $$
29949

حالا میخوام به توضیح مختصری در باره این نوع متغیرها بپردازم و در انتها هم یک مثال براتون بیارم:
- $0 : نام اسکریپتی که در حال نوشتن اون هستید رو نمایش میده:
- n$ : در این جا شما میتونید به جای n مقدار عددی مثبت رو قرار بدید. مثلا 1$ بیانگر پارامتر اولی هست که به اسکریپت میدید و ....
- #$ : این علامت بیانگر تعداد پارامترهایی هست که این اسکریپت نیاز داره تا با اون ها اجرا بشه. یا تعداد پارامترهایی که اسکریپت با اون اجرا شده.
- *$ : تمام پارامتر ها رو به نمایش میذاره
- @$ : این هم مانند قبل همه پارامتر ها رو نشون میده
- ?$ : این متغیر وضعیت خروج آخرین دستور زده شده رو به صورت یک عدد به شما نمایش میده. مثلا اگر دستور آخری که اجرا کردید موفقیت آمیز بوده و صحیح بده مقدار 0 رو بر میگردونه و اگر دستور یا اسکریپت با موفقیت به اجرا در نیامد مقدار 1- را بر میگرداند
- $$ : شماره پراسه شل در حال اجرا یا شلی که در اون هستید رو بر میگردونه
- !$ : شماره پراسه آخرین دستوری که در background اجرا شده رو نمایش میده
۰ نظر موافقین ۰ مخالفین ۰ ۰۶ تیر ۹۳ ، ۲۰:۴۴
مرتضی

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

شل محیطی ست که میتونه دستورات برنامه ها و اسکریپت های شما رو اجرا کنه. همونطور که سیستم عامل های مختلفی هست شل های مختلفی هم وجود داره.


Shell Prompt

علامت شل $ می باشد که وقتی ظاهر شد شما میتونید دستورات لازم رو وارد کنید. بعد از اینکه دستور رو نوشتید و اینتر رو زدید, شل مقدار ورودی رو از شما میگیره. هر دستور در لینوکس به خودی خود یک داده از نوع رشته ست که به صورت پیوسته و ناگسسته نوشته میشه.

دستور زیر تاریخ و ساعت رو به شما نشون میده:

$ date
Tue Jun 24 20:27:28 IRDT 2014


شما میتونید نشان دستورات خودتون رو با توجه به توضیحاتی که در بخش محیط ها  گفتم تغییر بدید.

۲ نظر موافقین ۲ مخالفین ۰ ۰۳ تیر ۹۳ ، ۲۱:۳۱
مرتضی