در توسینسو تدریس کنید

و

با دانش خود درآمد کسب کنید

آموزش دستور test در اسکریپت نویسی لینوکس

یکی از بخشهایی که شما دوستان عزیز برای نوشتن یک اسکریپت به آن نیاز دارید استفاده از قابلیت test کردن است، شما با استفاده از این قابلیت می تونید از وجود و یا عدم وجود یک فایل مطمئن شوید، دو مقدار را با هم مقایسه کنید که آیا یکسان هستند و یا کدام یک بزرگتر از دیگری است و این شروط را می توانید با حلقه هایی مثل if while و غیر استفاده کنید برای انجام دادن سایر اقدامات در اسکریپت نویسی. این بخش را با دقت مطالعه کنید.قبل از شروع این بخش با مخلوط کردن فرمان ها آشنا می شوید. این بخش شامل سه نماد است، نماد ; && و نماد || در ادامه هر کدام را توضیح می دهیم.


نماد ; :

در بین دو فرمان باعث می شود که فرمان اول راه اندازی شود و در مرحله بعد فرمان بعدی راه اندازی شود، مثال این بخش به صورت زیر است:
#ls  ;  id ; cat file
همانطوری که مشاهده کرده اید می توانید در بین بیش از چند فرمان هم از آن استفاده کنید،

نما && :

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

نماد ||:

وجود این فرمان دو فرمان باعص می شود که اگر فرمان اول راه اندازی نشود فرمان دوم راه اندازی شود که در نوشتن اسکریپت بسیار مفید است.

تست کردن دو رشته یا string :


شما می توانید برای مقایسته کردن دو رشته از تست استفاده کنید، قواعد این مثالها در زیر بیان شده است:
“s1 = s2” دو مقدار با هم برابر باشد.
“s1 != s2” دو رشته با هم برار نباشد
“z string-” طول یک رشته صفر باشد
“ n string-” طول یک رشته صفر نباشد


مقایسه کردن دو مقدار عددی:


یکی دیگر از قابلیت های برنامه test مقایسه کردن دو مقدار عددی با همدیگر است، این کار به صورت زیر انجام می شود:
“n1 -eq n2” دو مقدار عددی با هم برابر است.
“n1 -ne n2” دو مقدار عددی با هم برابر نیستند
“n1 -gt n2” مقدار اول ار مقدار دوم بزرگتر است
“n1 -lt n2” مقدار اولی از مقدار دومی کوچکتر است
“n1 -ge n2” مقدار اولی بزرگتر از مقدار دومی است
“n1 -le n2” مقدار اولی کوچکتر از مقدار دومی است.

چک کردن وجود یک فایل:


یکی دیگر از قابلیت های فرمان test چک کردن وجود و یا عدم وجود بک فایل و شاخه است به صورت زیر شما می توانید از سویچ های زیر استفاده کنید:
“e file-” چک کردن وجود یک فایل
“f file-” چک کردن این که آیا مقدار وارد شده فایل است.
“d file-” چک کردن این که آیا مقدار وارد شده شاخه است.

یک مثال ساده از تست:
#!/bin/sh
if [ $1 -eq $2 ]; then
		echo “they are equal”
else
		echo “they are NOT equal”
fi


#دوره_shell_scripting #فرمان_test #دوره_آموزشی_شل_اسکریپتینگ
4 نظر
zpoorata

سلام،

اینا یه معنی میدن:

“n1 -gt n2” مقدار اول ار مقدار دوم بزرگتر است

“n1 -ge n2” مقدار اولی بزرگتر از مقدار دومی است

“n1 -lt n2” مقدار اولی از مقدار دومی کوچکتر است

“n1 -le n2” مقدار اولی کوچکتر از مقدار دومی است.

میشه لطفا چک کنید.

محمد عابدینی

سلام برای چک کردن بیشتر و بخشهای دیگری در این بخش می تونید به صفحه man فرمان test مراجعه کنید به آدرس زیر:

https://linux.die.net/man/1/test
zpoorata

چک کردم:

INTEGER1 -ge INTEGER2

INTEGER1 is greater than or equal to INTEGER2 یعنی مقدار اول بزرگتر مساوی از مقدار دوم میباشد

INTEGER1 -gt INTEGER2

INTEGER1 is greater than INTEGER2 یعنی مقدار اول بزرگتر از مقدار دوم میباشد

INTEGER1 -le INTEGER2

INTEGER1 is less than or equal to INTEGER2 یعنی مقدار اول کوچکتر مساوی مقدار دوم میباشد

INTEGER1 -lt INTEGER2

INTEGER1 is less than INTEGER2 یعنی مقدار اول کوچکتر از مقدار دوم میباشد

شما اون مساوی ها رو جا انداختید برا همون جمله هاتون یه معنی دادن

محمد عابدینی

ممنون از شما

نظر شما
برای ارسال نظر باید وارد شوید.
از سرتاسر توسینسو
تنظیمات حریم خصوصی
تائید صرفنظر
×

تو می تونی بهترین نتیجه رو تضمینی با بهترین های ایران بدست بیاری ، پس مقایسه کن و بعد خرید کن : فقط توی جشنواره پاییزه می تونی امروز ارزونتر از فردا خرید کنی ....