No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Curso de Programación en Bash Shell

Curso de Programación en Bash Shell

Marco Antonio Toscano Freire

Marco Antonio Toscano Freire

Sentencias Case

22/43
Recursos

En la sentencia Case el objetivo principal es validar una expresión simple, puede ser un número, una cadena o un rango de valores

Aportes 27

Preguntas 3

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

o inicia sesión.

Para el caso default, cuando las entradas del case no se cumplen, el asterisco debe ir sin comillas.

#/bin/bash
#programa para validar la sentencia case

color=""

read -p "digite un color: " color

case $color in
    "amarillo") echo "Amarillo en ingles es Yellow";;
    "azul")     echo "Azul en ingles es Blue";;
    "rojo")     echo "Rojo en ingles es Red";;
    *)          echo "color no conocido";;
esac

Sería una buena idea renovar este curso. Algunos conceptos no quedan tan claros.

  1 #!/bin/bash
  2 # Practice time with Case Sentence
  3 # Autor: Diego Ramirez - @diegodev
  4 
  5 operatingSystem=""
  6 
  7 read -p "What is your Operating System?: " operatingSystem
  8 
  9 case $operatingSystem in
 10     "Windows") echo -e "\nHello Windows User!";;
 11     "MacOs") echo -e "\nHello Hipster!";;
 12     "Linux") echo -e "\nWelcome to the Open Source my friend";;
 13     *) echo -e "\nAre you kidding me?"
 14 esac

Aquí hay un ejemplo general del case statement:

case EXPRESSION in

  PATTERN_1)
    STATEMENTS
    ;;

  PATTERN_2)
    STATEMENTS
    ;;

  PATTERN_N)
    STATEMENTS
    ;;

  *)
    STATEMENTS
    ;;
esac

En Fish Shell:

#!/usr/bin/fish

set -l count
set -l stars

while true
    read -n1 -P '¿Cuántas estrellitas le darías a este curso? (1-5)> ' count

    if string match --regex --quiet '^[1-5]$' $count
        break
    else
        echo 'Por favor, introduce un número del 1 al 5'
    end
end

# String ######################################################################
echo -e '\nWith the `string` builtin command'
echo 'Gracias por darle estás estrellitas al curso '(string repeat -n $count '🌟')

# For #########################################################################
for ignore in (seq $count)
    set stars "$stars🌟"
end

echo -e '\nWith `for`'
echo "Gracias por darle estás estrellitas al curso $stars"

# Switch-case #################################################################
switch $count
    case '1'
        set stars '🌟'
    case '2'
        set stars '🌟🌟'
    case '3'
        set stars '🌟🌟🌟'
    case '4'
        set stars '🌟🌟🌟🌟'
    case '5'
        set stars '🌟🌟🌟🌟🌟'
    case '*'
        exit 1 # Should not be reached
end

echo -e '\nWith `switch-case`'
echo "Gracias por darle estás estrellitas al curso $stars"

Si pongo “*”) no me reconoce, sin embargo me funciona bien sin las comillas *) así sí me funciona correctamente.

En mi caso, apliqué el operador or, para que la A pueda ser insertada tanto en mayúscula, como en minúscula.

#!/bin/bash
#expresion case, para validar rango de valores.  
#Autor: @harvif

opcion=""

echo "ejemplo Sentencia case"
read -p "Ingrese una opción de la A a la Z" opcion
echo -e "\n"
case $opcion in

    [a] | [A]) echo -e "\n Operacion Guardar Archivo";;
    "e") echo -e "\n Operacion eliminar archivo";;
    [C-E]) echo -e "/n No esta implementada la opcion";;    
    *) echo -e "opcion no implementada"
esac

Hola, dejos mis apuntes. saludos.

# ! /bin/bash
# programa para explicar sentencia case 
# Author: Diego Beltran tw @diguitodev hista @diegodevelops


opcion=""

echo "Ejemplo de sentencia case"
read -p "ingrese una opcion de la A - Z: " opcion
echo -e "\n"

case $opcion in
    "A") echo -e "\nOperacion guardar archivo";;
    "B") echo "Operación eliminar archivo";;
    [C-E]) echo "No esta implementada la operacion";;
    "*") "opcion incorrecta"
esac```
#!/bin/bash
# Programa que implementa la funcion case para en base a la opcion elegida, seguir un algoritmo

echo "Elija un numero entre 0 y 10: "
read opcion

case $opcion in
    1) echo "Te toca un perfume";;
    2) echo "Te toca perder.";;
    *) echo "Opcion erronea."
esac

Da error “*”) "opcion Incorrecta
debe ser ->

*) echo “opcion Incorecta”

Este vato no explica nada, me gustaria que los cursos sean de una calidad superior porque quedan muy por detras

Un poco diferente el codigo pero funciona igual

# !/bin/bash
# Programa para ejemplificar el uso la sentencia case
# Autor: Tito026


echo "Ejemplo Sentencia Case"
read -n1 -p "Ingrese una opcion de la A - Z:" opcion
echo -e "\n"

case $opcion in
  "A") echo -e "\nOperacion Guardar Archivo";;
  "B") echo "Operacion Eliminar Archivo";;
  [C-E]) echo "No esta implementada la operacion";;
  "*") echo "Opcion Incorrecta";;
esac

  • ¿ Cómo utilizar la sentencia case?
  1. Mecanismo para evaluar una simple expresión sea entero o cadena.
  2. Es muy similar a la sentencia switch.
  3. Puede evaluar rango de caracteres.

Terminal:

Código:

#!/bin/bash
# Program to exemplify how to use 'case' sentence.
# Author: Cristian Camilo - Cristianco9

option=""
filter='^[A-Z]?$'

echo "************ VALIDATION SYSTEM ************"
read -p "Please enter a option between (A-Z): " option
while [[ ! $option =~ $filter ]]; do
    echo "************* INCORRECT VALUE *************"
    read -p "Please enter a option between (A-Z): " option
done
case $option in
    "A") echo -e "\n*************** File saved ****************";;
    "B") echo -e "\n************* File deleted ****************";;
    [C-E]) echo -e "\n*********** NOT IMPLEMENTATED *************";;
    *) echo -e "****************** ERROR ******************"
esac
echo "******************* END *******************"

Dos observaciones

  1. El Asterisco (*) de la opción final debe ir sin comillas
  2. Al final de esta misma opción le hicieron falta los “;;”

Les comparto el código con las correcciones

# !/bin/bash
# Programa para ejemplificar el uso de la sentencia case
  
# Autor: Angel Estrada
  
opcion=""
  
echo -e "\nEjemplo sentencia Case\n"
  
read -n1 -p "Ingrese una opcion de la A-Z: " opcion
  
echo -e "\n"
  
case $opcion in
      "A") echo -e "\nOperacion guardar Archivo";;
      "B") echo "Operacion eliminar archivo";;
      [C-E]) echo "No estaimplementada la operacion";;
      *) echo " $opcion no es una opcion ";;
esac
 

Hola, cómo se inserta el código en los aportes?

Hola! les comparto mi código con el tema de la clase.

#!/bin/bash
# Programa para el uso del tema de case
# Autor: Milo

opcion=""

echo "Ejemplo del tema de la sentencia CASE"
read -p "Ingrese un tema de la A - Z: " opcion
echo -e "\n"

case $opcion in 
    "A") echo "Seleccionaste el tema de la A";;
    "B") echo "El tema seleccionado es B";;
    [C-E]) echo "Ingresaste el tema de C, D o E";;
    *) echo "Ningún tema clasificado";;
esac

Hola, comparto el tema de mi ejercicio

echo "Programa de una expresion simple"
read -n1 -p "Introduce un valor entre ‘0’ y ‘1’, o ‘e’ para salir: " option
echo -e "“
case $option in
"0”) echo -e “Entrada inactiva: $option”;;
“1”) echo -e “Entrada activa: $option”;;
“e”) echo -e “Saliendo…”
*) echo -e “Valor introducido: $option (sin efecto)”;;
esac
echo -e “”

Buenísimo el curso 😃

para los puristas el -lt = menor a

gracias

Listo

#!/bin/bash
# Programa para utilziat expresiones Case
# DBZ

opcion=""

echo "Ejemplo Sentencia Case"
read -p "Ingrese una opción de la A - Z:" opcion
echo -e "\n"

case $opcion in
    "A") echo -e "\nOperación Guardar Arhivo";;
    "B") echo "Operación Eliminar Archivo";;
    [C-Z]) echo "No esta implementada la operación";;
    "*") "Opción Incorrecta"
esac   

echo "Ud selecciono la opcion: $opcion"
#!/bin/bash

echo "------------------↓↓-------------------"
echo "colors name's in english:"

read -p "Type a color: " u_color

case $u_color in

    "red"|"Red")
        echo "$u_color in spanish is 'rojo'"
        echo ""
        ;;
    "green"|"Green")
        echo "$u_color in spanish is 'verde'"
        echo ""
        ;;
    "blue"|"Blue")
        echo "$u_color in spanish is 'azul'"
        echo ""
        ;;
    *)
        echo "sorry, the only available colors are red, green and blue"
        echo ""
        ;;
esac

Lo hice de la siguiente forma.

# !/bin/bash
# Programa para ejemplificar el uso de la sentencia case
# Autor: Jose Suarez

opcion=""

echo "Ejemplo Sentencia case"
read -n1 -p "Ingrese una opcion de la A - Z:" opcion
echo -e "\n"

case $opcion in
    "A") echo -e "\nOperacion Guardar Archivo";;
    "B") echo -e "\nOperacion Eliminar Archivo";;
    [C-E]) echo -e "\nNo esta implementada la operacion";;
    *) echo -e "\nOpcion incorrecta"
esac
#!/bin/bash

option=""

read -n1 -p "Enter an option (A-Z): " option
echo -e "\n"

case $option in
    "A")
        echo -e "\nSave file operation";;
    "B")
        echo "Remove file operation";;
    [C-E])
        echo "This operation is not available";;
    "*")
        echo "Invalid option";;
esac