بررسی خروجی عددی در اسکریپت Bash
بررسی خروجی عددی در اسکریپت Bash کار ساده ای است ، برای بررسی اینکه آیا خروجی یک دستور در bash یک عدد است یا خیر، میتوانید از مطابقت با الگو pattern matching..
بررسی خروجی عددی در اسکریپت Bash
برای بررسی اینکه آیا خروجی یک دستور در bash یک عدد است یا خیر، میتوانید از مطابقت با الگو (pattern matching) در bash استفاده کنید. در اینجا، من یک مثال میزنم که در آن از دستور echo
برای تولید یک خروجی استفاده میشود و سپس بررسی میکنیم که آیا خروجی یک عدد است یا خیر:
#!/bin/bash
# Here, we assume the echo command returns a value. You can replace this with any other command.
output=$(echo 123)
# Check if the output is a number
if [[ $output =~ ^[0-9]+$ ]]; then
echo "The output is a number."
else
echo "The output is not a number."
fi
توجه: الگو ^[0-9]+$
فقط اعداد مثبت را بررسی میکند. اگر میخواهید هم اعداد مثبت و هم منفی را بررسی کنید، از الگو ^-?[0-9]+$
استفاده کنید.
بیایید این کد را برایتان توضیح بدهیم:
-
output=$(echo 123)
:- در این خط، خروجی دستور
echo 123
به متغیر به نامoutput
اختصاص مییابد. echo 123
به سادگی عدد123
را در کنسول چاپ میکند.- با استفاده از
$(...)
، خروجی این دستور به متغیرoutput
اختصاص مییابد.
- در این خط، خروجی دستور
-
if [[ $output =~ ^[0-9]+$ ]]; then
:- در اینجا یک شرط بررسی میشود. ما میخواهیم بفهمیم آیا متغیر
output
فقط شامل اعداد است یا خیر. - الگوی
^[0-9]+$
برای بررسی این است که آیا یک رشته فقط از اعداد تشکیل شده است یا خیر.
- در اینجا یک شرط بررسی میشود. ما میخواهیم بفهمیم آیا متغیر
-
echo "The output is a number."
:- اگر شرط بالا درست باشد (یعنی
output
فقط از اعداد تشکیل شده باشد)، این پیام چاپ میشود.
- اگر شرط بالا درست باشد (یعنی
-
else
:- اگر شرط بالا نادرست باشد، کد در بخش
else
اجرا میشود.
- اگر شرط بالا نادرست باشد، کد در بخش
-
echo "The output is not a number."
:- اگر
output
فقط از اعداد تشکیل نشده باشد، این پیام چاپ میشود.
- اگر
امیدوارم که این توضیحات به شما کمک کند تا بهتر کد را درک کنید.
دیدگاه های مربوط به این مقاله (برای ارسال دیدگاه در سایت حتما باید عضو باشید و پروفایل کاربری شما تکمیل شده باشد)