From 8c7556b450cb9f3ebfb253278cf2354b3ee994f7 Mon Sep 17 00:00:00 2001 From: cheatsnake <72691412+cheatsnake@users.noreply.github.com> Date: Mon, 29 Aug 2022 22:15:27 +0300 Subject: [PATCH] update bash scripts cheatsheet --- files/linux/bash-scripts-cheatsheet.md | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/files/linux/bash-scripts-cheatsheet.md b/files/linux/bash-scripts-cheatsheet.md index b3cff0c..eb29988 100644 --- a/files/linux/bash-scripts-cheatsheet.md +++ b/files/linux/bash-scripts-cheatsheet.md @@ -297,4 +297,25 @@ echo $(expr $num1 / $num2) # 2 echo $((num1 % num2)) # 0 echo $(expr $num1 % $num2) # 0 ``` -> Обратите внимание, что при использовании умножения с ключевым словом `expr` необходимо использовать косую черту. \ No newline at end of file +> Обратите внимание, что при использовании умножения с ключевым словом `expr` необходимо использовать косую черту. + +## Конструкция switch case + +Не всегда удобно использовать конструкции if/elif для большого количества условий. Для этого лучше подойдет конструкция case: + +```sh +read COMMAND + +case $COMMAND in + "/help" ) + echo "Вы открыли справочное меню" ;; + "/ping" ) + echo "PONG" ;; + "/version" ) + echo "Текущая версия: 1.0.0" ;; + * ) + echo "Такой команды нет :(" ;; +esac +``` + +> Случай со звездочкой * отработает лишь в том случае, если не подойдет ни одно из условий выше. \ No newline at end of file