از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
روش ایجاد یک منو Bash Script
سرفصلهای مطلب
مثال 01
ابتدا، بیایید یک مثال ساده برای توضیح بیشتر داشته باشیم و ببینیم که چگونه یک کاربر می تواند یک منو در آن ایجاد کند bash اسکریپت در سیستم اوبونتو 20.04. ما در را باز کرده ایم terminal پوسته با کمک میانبر دستور “Ctrl+Alt+T”. روی صفحه دسکتاپ اوبونتو 20.04 این terminal چند ثانیه دیگر باز می شود
بعد از terminal با موفقیت راه اندازی شد، یک جدید ایجاد کنید bash فایلی با نام “menu.sh” با استفاده از دستورالعمل “touch” برای این منظور. ما آن را در یک باز کرده ایم GNU ویرایشگر نانو با استفاده از دستور “nano” در پوسته مطابق تصویر خروجی زیر.
$ nano menu.sh
همانطور که فایل در ویرایشگر نانو باز می شود، اجازه دهید a را ایجاد کنیم bash کد برای ایجاد یک منو ابتدا، را اضافه کنید bash پشتیبانی در بالای یک فایل، به عنوان مثال، “#!/bin/bash”. متغیر داخلی “PS3” در اینجا استفاده شده است تا از کاربر بخواهد انتخاب خود را وارد کند.
متغیر شماره انتخاب کاربر را ذخیره می کند و از آن در ساختار انتخاب استفاده می کند. سپس، از ساختار “انتخاب” استفاده می کنیم تا مقدار را از آرایه ای از رشته ها با استفاده از شماره شاخص، یعنی انتخاب انتخاب شده توسط کاربر، بدست آوریم. اگر انتخاب مطابقت داشته باشد، دستور do مقدار انتخاب شده توسط کاربر را نمایش می دهد و شماره شاخصی را که کاربر انتخاب کرده است نمایش می دهد. روی را terminal. در اینجا از تکرار کننده متغیر “$i” برای بدست آوردن مقدار استفاده می شود و از متغیر داخلی “$REPLY” برای دریافت گزینه index استفاده می شود.
تازه ایجاد شده خود را ذخیره کنید bash با استفاده از کلید “Ctrl+S” در فایل کد کنید و با میانبر “Ctrl+X” از فایل خارج شوید. در حال حاضر به ما بازگردانده شده است terminal. بیایید جدید ساخته شده را اجرا کنیم bash برای دیدن نتایج فایل کنید
برای این کار از «bashدستور ” به همراه نام یک فایل به صورت زیر. خروجی 5 گزینه را نشان می دهد terminal اولین. کاربر باید یکی از آنها را انتخاب کند. بار اول، کاربر 3 را انتخاب کرد و “William” را به عنوان یک مقدار دریافت کرد، و بار دوم با وارد کردن مقدار 1 در قسمت “John” دریافت کرد. terminal پوسته به عنوان ورودی از طریق میانبر “Ctrl+Z” از اجرا خارج شوید.
مثال 02
همانطور که می بینید، مثال بالا گزینه خروج از منو را در مورد انتخاب یک گزینه پوشش نمی دهد. بنابراین، در مثال بعدی، گزینه های ترک را نیز پوشش خواهیم داد. برای به روز رسانی کد، آن را باز کنید bash فایل “menu.sh”. پس از باز کردن آن، نیازی به تغییر آن نیست bash پشتیبانی و متغیر “PS3” زیرا به همان صورت استفاده خواهند شد.
از طرف دیگر، باید خطوط کد اضافی اضافه کنید. ما یک منو ایجاد خواهیم کرد تا به کاربران خود اجازه انجام عملیات ریاضی را بدهیم. برای این منظور، از دستورات case در ساختار “انتخاب” استفاده می کنیم. پس از متغیر “PS3″، لیستی از رشته ها را با 5 مقدار مختلف در آن اعلام کرده ایم. هر یک از مقادیر یک لیست نشان دهنده 1 عملیات ریاضی است.
می بینید که لیست شامل گزینه “خروج” برای خروج از منو پس از انتخاب توسط کاربر است. لیست به عنوان منو استفاده خواهد شد. ساختار select در اینجا استفاده می شود. این ساختار انتخابی از مقدار، به عنوان مثال، مقدار “PS3” برای جستجوی گزینه از یک لیست، به عنوان مثال، “cal” استفاده می کند.
پس از جستجوی گزینه از یک لیست، گزینه case با گزینه های لیست شده شماره فهرست تطبیق داده می شود. سپس گزینه خاص از دستور case اجرا می شود و محاسبه انجام می شود. اگر کاربر 1 را وارد کند، مورد “Sum” اجرا می شود. در هر مورد، از دو دستور خواندن برای انجام محاسبات استفاده شده است. پس از آن، دستور echo از هر دو متغیر برای انجام عملیات مورد نیاز استفاده می کند روی هم متغیرها و هم نمایشگر. پرونده جمع در اینجا بسته می شود و سایر پرونده ها شروع می شود.
اگر کاربر عدد 2 را وارد کند، مورد “Submit” برای محاسبه تفریق دو عدد صحیح وارد شده توسط کاربر با استفاده از عملگر “-” اجرا می شود. گزینه “Div” زمانی اجرا می شود که کاربر عدد 3 را به عنوان گزینه وارد کرده و هر دو عدد صحیح را با استفاده از علامت “/” تقسیم کند. 4هفتم زمانی که کاربر 4 را به عنوان ورودی اضافه می کند، گزینه فراخوانی می شود و ضرب با استفاده از عملگر “*” انجام می شود.
در نهایت، دستور select زمانی که کاربر عدد 5 را به عنوان ورودی خود وارد می کند، حالت Quit را اجرا می کند. Quit case پیام موجود بودن منو را نمایش می دهد و اجرای کد را با کمک کلمه کلیدی break در آن متوقف می کند. اگر کاربر شماره گزینه را اشتباه وارد کند، یعنی غیر از 1 تا 5، این پیام را نشان می دهد که کاربر گزینه نامعتبر را وارد کرده است.
وقتی کد را اجرا می کنید، 5 گزینه منو را نشان می دهد. کاربر 1 را به عنوان انتخاب خود اضافه کرد و وارد حالت “Sum” شد. سپس دو عدد صحیح اضافه کرد و مجموع هر دو محاسبه شد. بنابراین، تمام گزینه های دیگر انجام شده است. در نهایت، گزینه خروج برای خروج از منو فراخوانی شد.
نتیجه
این مقاله شامل تصاویر بسیار ساده و قابل درک برای ایجاد یک منو در terminal با کمک الف bash اسکریپت ما از ساختار انتخاب، عبارات مورد، متغیر PS3 و لیست برای دستیابی به نتیجه کیفی استفاده کرده ایم.
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم
زمان انتشار: 1402-12-30 07:46:05