Linux команди

Команда за избор на баш

Команда за избор на баш
'Изберете'command е много полезна команда bash за създаване на меню bash. Различни типове задачи за генериране на менюта, създаване на списък с директори на базата на меню, създаване на меню от съдържание на файл и т.н. може да се направи с помощта на командата bash select. Как можете да приложите тези типове задачи с помощта на командата bash select са показани в този урок.

Синтаксис:

изберете v в списъка с данни
направете
изявление1
Изявление2
Изявление3
Свършен

Тук елементът от менюто ще бъде създаден от списъка с данни, който може да бъде масив или друг източник на данни. Всеки елемент от менюто се извлича от списъка с данни и се съхранява в променлива, за да създаде менюто. Командата „Избор“ може да се използва с командата „дело“ също за създаване на менюто. Тук са показани различни типове задачи за създаване на меню, използвайки много прости примери.

Пример-1: Създаване на просто меню

Създайте bash файл с име изберете1.ш със следния bash скрипт. Тук, „изберете“ команда ще извлече всяка информация от списъка и ще отпечата данните като меню. Следният скрипт съдържа марките на мобилните телефони и след изпълнението на скрипта ще създаде меню от мобилни марки и ще помоли потребителя да избере всяка марка. Ще отпечата името на избраната марка.  Потребителят трябва да натисне Ctrl + c да се прекрати от скрипта.

#!/ bin / bash
# Определете тук списъка с менюта
изберете марка в Samsung Sony iphone симфония Уолтън
направете
echo "Избрахте $ марка"
Свършен

Изход:

Стартирайте скрипта.

$ bash select1.ш

Следният изход ще се появи след стартиране на скрипта и избор на елемент от менюто номер 1 и 4.

Пример-2: Изберете команда с изявление за случай

Как можете да създадете bash меню с изявление за случай е показано в този пример. Създайте bash файл с име изберете2.ш със следния bash скрипт. След стартиране на скрипта потребителят ще избере всеки елемент от менюто и изявлението за случай ще съответства на избраната стойност със стойността на случая. Тук се използват множество стойности на регистъра за съвпадение с избрания елемент от менюто. Ако нито една от стойностите на случая не съвпада с избрания елемент от менюто, ще се отпечата „Invalid entry“.

#!/ bin / bash
echo "Коя операционна система ви харесва?"
# Имената на операционната система се използват тук като източник на данни
изберете OS в Ubuntu LinuxMint Windows8 Windows7 WindowsXP
направете
случай $ os в
# Тук са декларирани две стойности на регистъра за съвпадение
"Ubuntu" | "LinuxMint")
echo "Аз също използвам $ os."
;;
# Тук са декларирани три стойности на регистъра за съвпадение
"Windows8" | "Windows10" | "Уиндоус експи")
echo "Защо не опитате Linux?"
;;
# Съвпадение с невалидни данни
*)
echo "Невалиден запис."
почивка
;;
esac
Свършен

Изход:
Стартирайте скрипта.

$ bash select2.ш

Различните резултати ще се появят за различен избор. Тук 1 е избран за първи път, когато е Ubuntu. то съвпада с първата стойност на случая, отпечатайте съобщението „Използвам и Ubuntu“. Следващият път се избира 4 и елементът от менюто е Windows7 но няма стойност на случая с това име. И така, този път отпечата „Невалиден запис“ и прекратяват от скрипта.

Пример-3: Създаване на вложено bash меню

Когато всяко меню е създадено под менюто на другото, то се нарича вложено меню. Вложеното меню може да бъде създадено в основата с помощта на две или повече инструкции за избор и регистър. Създайте bash файл с име изберете3.ш със следния bash скрипт. Тук се използват два оператора select и case за реализиране на вложеното меню. Родителското меню съдържа 4 елемента, а подменюто съдържа 3 елемента тук.

#!/ bin / bash
докато е вярно
направете
# Родителски елементи от менюто, декларирани тук
изберете елемент в HDD на монитора на мишката
направете
# case case за сравнение на първите елементи от менюто
случай $ артикул в
Мишка)
echo "Кой тип монитор харесвате?"
;;
Принтер)
# Тук декларирани елементи от подменюто
изберете sub_item в Samsung HP Dell
направете
# изявление за случай за елементи от менюто слънце
дело $ sub_item в
Samsung)
echo "Цената на принтера samsung е $ 100"
почивка
;;
HP)
echo "Новият принтер HP 880 с цена на принтера е $ 450"
# връщане към родителското меню
почивка
;;
Dell)
echo "Вече няма наличен принтер на Dell"
# връщане към родителското меню
почивка 2
;;
esac
Свършен
почивка
;;
Монитор)
echo "Купете нашия нов монитор Samsung на ниска цена"
break # връщане към текущото (главно) меню
;;
HDD)
echo "HDD с добро качество се предлага на склад"
# връщане от скрипта
почивка 2
esac
Свършен
Свършен

Изход:

Стартирайте скрипта.

$ bash select3.ш

След стартиране на скрипта се показва родителското меню с 4 елемента. Тук само вторият елемент от менюто на родителското меню съдържа подменю. След като изберете 2, се появи подменюто и когато потребителят избра 3, тогава се показва съответстващото съобщение на елемент 3 от менюто и се връща обратно в родителското меню.

Пример-4: Създайте bash меню с масив

Променливата на масива може да съхранява множество данни. Така че, можете да използвате масив като списък с данни за създаване на основно меню. Как можете да използвате масив с оператор select за създаване на меню е показано в този пример. Създайте bash файл с име изберете4.ш със следния bash скрипт. Подпрограмата Bash се използва в този скрипт за създаване на меню от масива. Използва се масив с три елемента и menu_from_array () се извиква за създаване на менюто. Скриптът ще провери дали избраният номер на менюто е между 1-3 или не. Ако номерът не е в този диапазон, той ще инструктира потребителя да го избере в този диапазон, той ще отпечата елемента от менюто за избор с друг текст.

menu_from_array ()

Избери предмет; направете
# Проверете номера на избрания елемент от менюто
ако [1 -le "$ REPLY"] && ["$ REPLY" -le $ #];
тогава
echo "Избраната операционна система е $ item"
почивка;
друго
echo "Грешен избор: Изберете произволен номер от 1 - $ #"
fi
Свършен

# Декларирайте масива
linux = ('Ubuntu' 'Linux Mint' 'CentOS')
# Извикайте подпрограмата, за да създадете менюто
menu_from_array "$ linux [@]"

Изход:

Стартирайте скрипта.

$ bash select4.ш

Тук първо се избира 2, което е в обхвата и отпечатва текста. 6 се избира за втори път, когато е извън обхвата и предлага на потребителя да избере номер в обхвата.

Заключение

Задачата за създаване на Bash меню чрез използване на оператор select е обяснена в този урок възможно най-просто. Надявам се, кодерът, който се интересува да работи върху менюто на bash и да научи изявлението bash select, ще получи помощ от този урок. Благодаря ти.

Инсталирайте най-новата стратегия за игра OpenRA на Ubuntu Linux
OpenRA е Libre / Free Real Time стратегия за игра, която пресъздава ранните игри на Westwood като класическата Command & Conquer: Red Alert. Разпредел...
Инсталирайте най-новия Dolphin Emulator за Gamecube & Wii на Linux
Dolphin Emulator ви позволява да играете избраните от вас игри Gamecube & Wii на Linux Personal Computers (PC). Като безплатно достъпен и емулатор на...
Как да използвам GameConqueror Cheat Engine в Linux
Статията обхваща ръководство за използването на GameConqueror cheat engine в Linux. Много потребители, които играят игри под Windows, често използват ...