Линук наредбе

Команда случаја БАСХ

Команда случаја БАСХ

Команда Басх цасе се користи за предузимање исправних радњи упоређивањем података попут иф наредбе. Ради као наредба преклопног слова других стандардних програмских језика. Ова наредба започиње наредбом 'цасе' и затвара се наредбом 'есац'. У наредби цасе не користи се наредба бреак, а двострука заграда (;;) потребна је за помињање изјаве за било које одређено подударање. Ова наредба проширује израз и покушава да се подудара са датим обрасцем, а статус статуса излаза ове наредбе биће нула ако подударање неће бити пронађено. У овом водичу приказани су неки уобичајени примери навода случаја.

Пример-1: једноставна изјава случаја

Појединачни условни израз се користи у наредби басх цасе за генерисање резултата на основу услова подударања. Направите басх датотеку са именом случај1.сх са следећим басх скриптом. Скрипта ће узети вредност низа и подударати вредност са сваким изразом. Следећа скрипта ће генерисати „Ниједан унос није пронађен“ ако не постоји одговарајући израз,
случај1.сх

#!/ бин / басх
ецхо "Укуцајте своје име"
прочитајте име
случај $ име у
Иесмин)
ецхо "Ваша омиљена боја је плава" ;;
Фахмида)
ецхо "Ваше омиљено пиће је Сприте" ;;
*)
ецхо "Није пронађен ниједан унос" ;;
есац

Покрените скрипту.

$ басх случај1.сх

Излаз:

Датотека се овде извршава са важећим и неисправним улазом да би се тестирао излаз.

Пример-2: вишеструка изјава случаја са цевчицом

У басх скрипти се могу применити вишеструки изрази великих слова за извршавање различитих врста израза. Симбол цеви (|) може се користити за додељивање вишеструких израза. Направите басх датотеку са именом цасе2.сх са следећом скриптом. Након покретања скрипте, ако се улазна вредност подудара са било којим изразом, исписује се одговарајућа текстуална вредност.
цасе2.сх

#!/ бин / басх
ецхо "Укуцајте свој ИД број"
прочитајте личну карту
случај $ ИД у
65341)
ецхо "Ваша позиција је прва" ;;
97564 | 88453)
ецхо "Ваша позиција је друга" ;;
45087)
ецхо "Ваша позиција је трећа" ;;
*)
ецхо "Неважећи ИД" ;;
есац

Покрените скрипту .

$ басх случај2.сх

Излаз:

Ова скрипта такође ради као и претходни пример. Једина разлика је у томе што се вредности више израза тестирају за један излаз.

Пример-3: Како изаћи из блока извода цасе / есац

Када се наредба басх цасе користи у оквиру бесконачне петље, наредба екит се користи за прекидање петље. Овај пример показује како се могу извршити ове врсте задатака. Направите текстуалну датотеку са именом цасе3.сх са следећом скриптом. Ова скрипта ће узети било који број од 1 до 3 као улаз. Ако је улаз 1, тада ће се додати два броја, ако је улаз 2, тада ће се одузети два броја, а ако је улазни број 3, множиће се два броја. Излаз ће бити „Неважећи унос“ ако је улазни број већи од 3 или мањи од 1 или ако је празан.
цасе3.сх

#!/ бин / басх
#!/ бин / басх
док (истина)
урадите
а = 8
б = 4
((к = $ а + $ б))
((и = $ а- $ б))
((з = $ а * $ б))
ехо "Тип 1 или 2 или 3"
читати анс
случај $ анс у
1) ецхо "Збир $ а и $ б је $ к & екит" ;;
2) ехо "Одузимање $ а и $ б је $ и & екит" ;;
3) ехо "Множење $ а и $ б је $ з & екит" ;;
*) ецхо "Неважећи унос"
есац
Готово

Покрените скрипту.

$ басх случај3.сх

Излаз:

Скрипта ће се наставити извршавати све док се не притисне цтрл + ц.

Пример-4: Провера вредности празног аргумента командне линије

Аргумент променљиве командне линије може се користити у наредби басх цасе. Направите датотеку са именом цасе4.сх са следећом скриптом која ће проверити вредност друге променљиве аргумента.

#!/ бин / басх
случај „$ 2“ у
"Убунту")
ецхо "Други аргумент је 2 УСД."
;;
"ЦентОС")
ецхо "Други аргумент је 2 долара."
;;
"")
ецхо "Други аргумент је празан."
;;
есац

Покрените скрипту.

$ басх случај4.сх

Излаз:

Овдје се скрипта први пут извршава без било какве вриједности аргумента наредбеног ретка и излаз приказује „Други аргумент је празан“. Када се скрипта изврши по други пут с вриједношћу аргумента наредбеног ретка, излаз се не приказује.

Пример-5: вишеструки исказ на основу корисничког уноса

Направите басх датотеку са именом цасе5.сх са следећом скриптом. Скрипта ће узимати име месеца као кориснички унос. Ако се име месеца подудара са било којом вредношћу случаја, тада ће се одређена текстуална порука доделити променљивој Порука. Вредност уноса мора бити пуно име месеца или назив месеца са три знака.

цасе5.сх

#!/ бин / басх
ецхо "Укуцајте име месеца"
прочитани месец
случај $ месец у
Јануар | јануар *)
Порука = "21. фебруар је наш Међународни дан мајки."
;;
Фебруар | фебруар *)
Порука = "21. фебруар је наш Међународни дан мајки."
;;
Март | март *)
Порука = "9. март је светски дан бубрега."
;;
Април | април *)
Порука = "Тренутни месец није фебруар"
;;
Мај | мај *)
Порука = "Тренутни месец је фебруар"
;;
Јун | јун *)
Порука = "Тренутни месец је фебруар"
;;
*)
Мессаге = "Нису пронађене одговарајуће информације"
;;
есац
ецхо $ Мессаге

Покрените скрипту.

$ басх случај5.сх

Излаз:

Следећи излаз ће се појавити за улазну вредност, „март“ или „март“.

Пример 6: Проверите променљиву у наредби случаја басх

Било која вредност низа може се исписати провером вредности променљиве аргумента командне линије. Направите текстуалну датотеку са именом цасе6.сх са следећом скриптом. У овом примеру се проверава вредност прве променљиве аргумента и ако је вредност празна тада ће се исписати низ „Свиђа ми се басх програмирање“.

цасе6.сх

#!/ бин / басх
случај $ 1 ин
("") ецхо "Волим басх програмирање";
есац

Покрените скрипту.

$ басх случај6.сх

Излаз:

Ова скрипта се извршава са и без првих аргумената. Неће бити резултата ако не прође ниједна променљива аргумента наредбеног ретка.

Закључак

У овом чланку су приказане различите употребе команде басх цасе. Ако читаоци правилно примене ове примере, биће им лакше решити многе проблеме басх програмирања.

Корисни алати за Линук играче
Ако волите да играте игре на Линуку, велика је вероватноћа да сте можда користили апликације и услужне програме попут Вине, Лутрис и ОБС Студио за поб...
ХД Ремастеред игре за Линук које никада раније нису имале Линук издање
Многи програмери и издавачи игара долазе са ХД ремастером старих игара како би продужили живот франшизе, молимо обожаваоце да захтевају компатибилност...
Како користити АутоКеи за аутоматизацију Линук игара
АутоКеи је услужни програм за аутоматизацију радне површине за Линук и Кс11, програмиран на Питхон 3, ГТК и Кт. Користећи његову скриптну и МАЦРО функ...