از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
$@ در اسکریپت Bash چیست؟
سرفصلهای مطلب
ما چندین مثال را برای توضیح بیشتر بررسی خواهیم کرد روی عملکرد $@ در اسکریپت Bash هنگام استفاده از سیستم اوبونتو 20.04:
مثال 01:
در ابتدا باید از توزیع Ubuntu 20.04 به عنوان کاربر sudo وارد شوید. پس از ورود موفقیت آمیز، خط فرمان را برای شروع کار باز می کنیم. برای باز کردن آن از «Ctrl+Alt+T“. به عنوان یک جایگزین، ما همچنین می توانیم از ناحیه Activity برای پیدا کردن آن استفاده کنیم console terminal از نوار جستجو بعد از بازکردن صحیح آن شروع به کار می کنیم روی $@ در Bash با ایجاد یک فایل Bash جدید. بنابراین، ما از “دست زدن به” پرس و جو با نام یک فایل به صورت ”one.sh“. توجه داشته باشید که فایل Bash حاوی یک “.sh” افزونه. اصابت “وارد” پس از نوشتن دستورالعمل زیر در پوسته آن را اجرا کنید. فایل Bash تازه ایجاد شده را در فهرست اصلی Ubuntu 20.04 خود پیدا خواهید کرد:
اکنون فایل Bash ایجاد شده است. ما باید آن را در یک ویرایشگر باز کنیم تا اسکریپت Bash را در آن اضافه و ویرایش کنیم. بنابراین، ما آن را با استفاده از ” باز خواهیم کردGNU نانو” ویرایشگر از terminal پوسته. از این رو، ما از «نانو” دستورالعمل کلمه کلیدی در پوسته به همراه نام یک فایل به صورت ”one.sh” مطابق تصویر زیر:
شما باید اسکریپت سه خطی زیر را در فایل Bash خود بنویسید.one.sh“. ابتدا پسوند Bash را در فایل اضافه کرده ایم. پس از آن، ما از سه عبارت echo در این اسکریپت برای استفاده از سه کاراکتر خاص و خروجی نتایج مربوطه استفاده کرده ایم. توجه داشته باشید که “$#کاراکتر ” برای خروجی تعداد کل ورودی یا رشته پارامترهای مقادیری که توسط کاربر در پوسته اضافه خواهد شد استفاده شده است. “$@کاراکتر ” برای نشان دادن آن سه مقدار یا پارامتر استفاده می شود روی را terminal، و “دلار؟” کاراکتر وظیفه خاصی دارد که در صورت موفقیت آمیز بودن آخرین دستور، 0 را برگرداند. در باش، “Ctrl+S” میانبر اغلب برای ذخیره فایل Bash در حالی که به نوعی باز است استفاده می شودنانو” ویرایشگر بنابراین، فایل one.sh خود را ذخیره کنید و آن را با استفاده از ” رها کنیدCtrl+X” برای برگرداندن آن به terminal:
اکنون، اسکریپت Bash جدید ایجاد شده در سیستم ما ذخیره و ایمن شده است. وقت آن رسیده است که آن را قابل اجرا کنیم. باید توجه داشته باشید که کاراکتری مانند $@ پارامترهای مقادیر را در داخل می گیرد terminal در حین اجرای یک فایل بنابراین، از “bash” پرس و جو کلمه کلیدی در پوسته اوبونتو با نام یک فایل ”one.sh” و تخصیص مقادیر پارامتر، همانطور که گفته شد. میتوانید از عکس زیر ببینید که ما 3 مقدار پارامتر رشتهای را برای اسکریپت Bash one.sh ارائه کردهایم، به عنوان مثال، Aqsa، Rimsha، و Awan. نتیجه خروجی نمایش خروجی 3 خطی است. خط اول تعداد کل پارامترهای اضافه شده را نشان می دهد. خط دوم مقادیر آرگومان های ارسال شده توسط کاربر را نمایش می دهد. در آخر، خط سوم 0 را به عنوان مقدار بازگشتی خود نشان می دهد زیرا دستور خط دوم موفقیت آمیز شده است:
مثال 02:
برای درک بیشتر کاراکتر $@ و مفهوم عملکرد، به مثال دیگری در مقاله خود نیاز داریم. بنابراین، ما همان پرونده را باز خواهیم کرد، “one.sh“، با GNU ویرایشگر نانو برای این کار، دستورالعمل زیر را امتحان کرده و برای ادامه روی دکمه «Enter» از صفحه کلید کلیک می کنیم:
از آنجایی که فایل اکنون باز می شود، یک اسکریپت Bash جدید و به روز شده را به آن اضافه خواهیم کرد. این بار، ما از یک اسکریپت ساده Bash برای تشریح عملکرد کاراکتر $@ استفاده کردهایم. بنابراین، شما باید اسکریپت Bash خود را با اسکریپت نشان داده شده در تصویر زیر به روز کنید. ما از حلقه for استفاده می کنیم تا هر بار یک آیتم را به عنوان آرگومان هایی که در $@ توسط کاربر ارسال می شود، بگیریم روی را terminal. هر مورد نمایش داده می شود روی را terminal از طریق عبارت echo پس از ذخیره فایل، به فایل بازگشتیم console برای اجرای اسکریپت Bash:
در دستورالعمل Bash، ما 5 آرگومان رشته ای را به همراه نام یک فایل ارسال کرده ایم.one.sh“. با زدن “وارد” کلید، terminal با هر آرگومان جداگانه نمایش داده شده است:
مثال 03:
بیایید نگاه دقیقتری به مثال دیگری از $@ داشته باشیم که در بالا توضیح داده شد. در این مثال، ما از $@ و $* برای مقایسه و متمایز کردن کار هر دو کاراکتر خاص استفاده خواهیم کرد. به این ترتیب، احتمالاً میتوانیم کاراکتر $@ را به درستی درک کنیم. برای باز کردن فایل از قبل ایجاد شدهone.sh“، دستور زیر را در خود بنویسید و سپس اجرا کنید console اوبونتو 20.04.
ما کد مثال بالا را به روز کرده ایم. تمام کاری که ما انجام دادیم اضافه کردن همان کد برای “$*” در حلقه for. ما کد Bash را ذخیره کرده و از فایل خارج شده ایم:
هنگام اجرا، به دلیل استفاده از کاراکتر $*، خط اول را به عنوان کل پارامترها نشان می دهد. همه خطوط دیگر خروجی کاراکتر $@ هستند:
مثال 04:
در آخرین مثال خود، عملکرد کاراکتر $@ را از طریق توابع و حلقه ها توضیح خواهیم داد. بنابراین، برای به روز رسانی اسکریپت Bash، فایل ” را باز کرده ایم.one.sh” یک بار دیگر توسط ”نانودستور ویرایشگر در پوسته به صورت زیر است:
این بار، ما از متد foo() برای چاپ آرگومان های ارسال شده در متدهای مربوطه از کاراکترهای خاص استفاده کرده ایم تا زمانی که چیزی به دست نیاید. روش “دلار 1” برای کاراکتر ویژه $@ است و ”دلار 2برای عملکرد کاراکتر $*. هر دو متد شامل فراخوانی متد foo() با کاراکترهای ویژه $@ و $* به طور جداگانه برای ارسال آرگومان ها هستند. متدهای Dollar1 و Dollar2 پس از دستورات پژواک فراخوانی می شوند در حالی که هر دو دارای سه آرگومان مشابه مقادیر پارامتری خود هستند:
اجرای کد خروجی را برای هر دو روش Dollar1 و Dollar2 به طور جداگانه نشان می دهد. “Using $@” خروجی را برای $@ نشان می دهد و “Using $*” خروجی کاراکتر $* را به طور جداگانه نشان می دهد.
نتیجه:
این راهنما روش استفاده از $@ در اسکریپت Bash، اعلام آن و روش عملکرد آن را شرح داده است. ما همچنین تفاوت بین $@ و سایر شخصیتهای مرتبط با دلار را توضیح دادهایم تا آن را قابل درکتر کنیم. امیدواریم در حین اجرای آن نیز از آن لذت برده باشید.
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم
زمان انتشار: 1402-12-30 15:51:03