Prep谩rate para tu pr贸ximo empleo comprando hoy a precio especial

Antes: $249

Currency
$209
Suscr铆bete

Termina en:

7 D铆as
20 Hrs
20 Min
43 Seg
Curso de Programaci贸n en Bash Shell

Curso de Programaci贸n en Bash Shell

Marco Antonio Toscano Freire

Marco Antonio Toscano Freire

Reto 2

17/43

Lectura

Reto 2:

Solicitar la informaci贸n de cada uno de ustedes como nombres, apellidos, edad, direcci贸n y n煤meros telef贸nicos; y posterior imprima toda la informaci贸n.

...

Reg铆strate o inicia sesi贸n para leer el resto del contenido.

Aportes 141

Preguntas 3

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

El reto resuelto:

#!/bin/bash

regexedad='^([1-9]{1,2})$'
regexnombre='^([A-z]{2,})$'
regexapellido='^([A-z]{2,})$'
regexdireccion='^([A-Z]*)'
regexnumero='^[0-9]{10})$'

read -p "Ingrese su nombre: " nombre
read -p "Ingrese su Apellido: " apellido
read -p "Ingrese su edad: " edad
read -p "ingrese su direcci贸n: " direccion
read -p "ingrese su numero de telefono: " telefono

if [[ $edad =~ $regexedad ]]; then
	echo "edad valida"
else
	echo "edad invalida"
fi

if [[ $nombre =~ $regexnombre ]]; then
	echo "nombre valido"
else
	echo "nombre invalido"
fi

if [[ $apellido =~ $regexapellido ]]; then
	echo "apellido valido"
else
	echo "apellido invalido"
fi

if [[ $direccion =~ $regexdireccion ]]; then
	echo "Direcci贸n valida"
else
	echo "Direcci贸n invalida"
fi


if [[ $telefono =~ $regextelefono ]]; then
	echo "telefono valido"
else
	echo "telefono invalido"
fi

echo "los datos"
echo $nombre
echo $apellido
echo $edad
echo $direccion
echo $telefono

Mi c贸digo, humilde, pero cumple con el Reto:

#!/usr/bin/env bash
# Gets personal info and then print it
# Carlos Velasquez - @crlosvelaquez

name=""
lastname=""
age=""
address=""
cellphone=""

echo "Type your data:"
read -p "What is your name? " name
read -p "What is your lastname? " lastname
read -p "How old are you? " age
read -p "Where do you live? " address
read -p "What is your cellphone? " cellphone

echo -e "\n"
echo "Your data: "
echo "Her/His name is $name $lastname"
echo "She/He is $age"
echo "She/He lives in $address"
echo "Her/His cellphone is $cellphone"

comparto el codigo! me 鈥渋nspire鈥 en algunos comentarios 馃槃

#! /bin/bash 
# RETO 2: programa de ingreso de datos personales, validacion e impresion


nombreRegEx='^([A-Z??????a-z??????]{1,}\s?){1,2}$'
apellidoRegEx='^[A-Z??????a-z??????]{1,}\s?[A-Z??????a-z??????]{1,}$'
edadRegex='^[0-9][0-9]?[0-9]?$'
direccionRegEx='^[A-Z??????a-z??????0-9.,# ]{1,}?$'
telefonoRegEx='^([(0-9]{2,2}[-. ]?)([(0-9]{2,2}[-. ]?)([0-9]{2,2}[-. ]?)([0-9]{2,2}[-. ]?)([(0-9]{2,2}[-. ]?)$'

oldAge=65
youngAge=8

# Solicitamos el Apellido
read -p "Ingrese su apellido:" apellido
while [[ ! $apellido =~ $apellidoRegEx ]]
do
  echo -e "el Apellido no es valido"
  read -p "Ingrese el Apellido (po favo):" apellido
done

# Solicitamos el nombre
read -p "Ingrese su nombre:" nombre
while [[ ! $nombre =~ $nombreRegEx ]]
do
  echo -e "el Nombre no es valido"
  read -p "Ingrese el Nombre (po favo):" nombre
done

# Solicitamos la edad
read -p "Ingrese su edad:" edad
while [[ ! $edad =~ $edadRegEx ]]
do
  echo -e "la edad no es valida"
  read -p "Ingrese su edad (po favo):" edad
done

if [[ $edad -gt $oldAge ]]; then
  echo -e "aprendiendo a programar a su edad! Felicidades!"
fi

if [[ $edad -lt $youngAge ]]; then
  echo -e "Too young!"
fi

# Solicitamos el telefono
read -p "Ingrese su Telefono:" telefono
while [[ ! $telefono =~ $telefonoRegEx ]]
do
  echo -e "el telefono no es valido"
  read -p "Ingrese su telefono (po favo):" telefono
done

# Solicitamos la direccion
read -p "Ingrese su Direccion:" direccion
while [[ ! $direccion =~ $direccionRegEx ]]
do
  echo -e "la direccion no es valida"
  read -p "Ingrese su direccion (po favo):" direccion
done

echo -e ""
echo -e "################"
echo -e " Datos Personales:"
echo -e "################"
echo -e "Apellido: $apellido"
echo -e "Nombre: $nombre"
echo -e "Edad: $edad Telefono: $telefono"
echo -e "Direccion: $direccion"

Codigo:

#!/bin/bash

#asks user for name, surname, age, address, phone#
#at the end prints all the information

#NOTE: regex = regular expression
#NOTE: [\n# $&:\s\t] this can be used for text msgs, ex: ayoo hello there!

#regexs
name_regex='^([A-Z]{1})([a-z]*)$' #in the state of California is legal to have a single letter as a first name
surname_regex='^([A-Z]{1})([a-z]*)$'
age_regex='^([1-9][1-9])$'
address_regex='^([A-Z]{1})([a-z]*\s)([A-Z]{2}\s)([0-9]*)$'
phone_regex='^([0-9]{10})$'


#~functions~
function invalid_syntax {
    echo "Invalid syntax..."
    echo "Please try again and double check if you miss spelled something"
    echo ""
}
while [[ ! $u_name =~ $name_regex ]]; do
    read -p "Name: " u_name
    if [[ $u_name =~ $name_regex ]]; then
        break
    else
        invalid_syntax
    fi
done

while [[ ! $u_surname =~ $surname_regex ]]; do
    read -p "Surname: " u_surname
    if [[ $u_surname =~ $surname_regex ]]; then
        break
    else
        invalid_syntax
    fi
done

while [[ ! $u_age =~ $age_regex ]]; do
    read -p "Age: " u_age
    if [[ $u_age =~ $age_regex ]]; then
        break
    else
        invalid_syntax
    fi
done

while [[ ! $u_phone =~ $phone_regex ]]; do
    read -p "Phone number: " u_phone
    if [[ $u_phone =~ $phone_regex ]]; then
        break
    else
        invalid_syntax
    fi
done

echo ""

while [[ ! $u_address =~ $name_regex ]]; do
    echo "format: Town + State abreviation + ZIP code"
    read -p "Address: " u_address
    if [[ $u_address =~ $address_regex ]]; then
        break
    else
        invalid_syntax
    fi
done

read -p "Are you sure about the info above? [y/n]: " u_answer
if [ $u_answer == "y" ]; then
    echo "okay, printing results..."
    sleep 1s
    echo ""
elif [ $u_answer == "n" ]; then
    echo "okay, re-sending registration form..."
    sleep 1s
    clear
    bash b32.sh
else
    echo "You typed: $u_answer"
    echo -e "Sorry, but you can only type:\n'n' = no\n'y' = yes"
    echo ""
fi

#asks user for name, surname, age, address, phone#

echo "------RESULTS-----"
echo ""
echo "Name: $u_name"
echo "Surname: $u_surname"
echo "Age: $u_age"
echo "Address: $u_address"
echo "Phone number: $u_phone"

Output:

Name: Christopher
Surname: Michaels 
Age: 18
Phone number: 3163256521

format: Town + State abreviation + ZIP code
Address: Baviar CA 032124
Are you sure about the info above? [y/n]: y
okay, printing results...

------RESULTS-----

Name: Christopher
Surname: Michaels
Age: 18
Address: Baviar CA 032124
Phone number: 3163256521

#!/bin/bash
read -p 鈥淣ombre:鈥 nombre
read -p 鈥淎pellido:鈥 apellido
read -p 鈥淓dad:鈥 edad
read -p 鈥淒ireccion:鈥 direccion
read -p 鈥淭elefono:鈥 telefono

echo 鈥渟us datos son:鈥 $nombre, $apellido, $edad, $direccion, $telefono

Pro Tip: para debuggear tu script en vim sin terminar el proceso ni cerrar el script que estas escribiendo puedes presionar ESC + [ctrl + z] y te sacar谩 del vim, Para regresar solo escribe [fg] y volver谩s al VIM con el script actual para seguir realizando modificaciones.

# !/bin/bash
# Solicitar la informaci贸n como nombres, apellidos, edad, direcci贸n y tel茅fono, luego imprimir

nombre=""
apellido=""
edad=""
direccion=""
telefono=""

read -p "Ingrese su nombre: " nombre
read -p "Ingrese su apellido: " apellido
read -p "Ingrese su edad: " edad
read -p "Ingrese su direcci贸n: " direccion
read -p "Ingrese su tel茅fono: " telefono
                                                                                                                        echo "Su nombre es: $nombre"                                                                                            echo "Su apellido es: $apellido"
echo "Su edad es: $edad"
echo "Su direccion es: $direccion"
echo "Su telefono es: $telefono"

El mio, sin usar funciones:

# !/bin/bash
# Reto 2 - Solicitar informacion e imprimirla | adding controls
# R = Regex
# Autor: Erick Velasco

## Declaracion de variables
nombres=""; wordsR='^[A-Z a-z]{2,35}$'
apellidos="";
edad=0; edadR='^(1[5-9])|([2-9][0-9])$'
direccion=""; direccionR='^[A-Za-z \.]{2,30}(N|No|Nro|#)[ ]?[0-9]{1,5}$'
telefono=0; telefonoR='^[0-9]{4,10}$'
flag=0

## Validar la informacion
while [[ $flag -eq 0 ]]; do
    read -p $'Ingrese sus nombres:\n' nombres
    if [[ $nombres =~ $wordsR ]]; then
        flag=1
    else
        echo "Nombre Invalido."
    fi
done
flag=0
while [[ $flag -eq 0 ]]; do
    read -p $'Ingrese sus apellidos:\n' apellidos
    if [[ $apellidos =~ $wordsR ]]; then
        flag=1
    else echo "Apellido/s Invalido/s."
    fi
done
flag=0
while [[ $flag -eq 0 ]]; do
    read -p $'Ingrese su edad:\n' edad
    if [[ $edad =~ $edadR ]]; then
        flag=1
    else echo "Edad no valida."
    fi
done
flag=0
while [[ $flag -eq 0 ]]; do
    read -p $'Ingrese su direccion:\n' direccion
    if [[ $direccion =~ $direccionR ]]; then
        flag=1
    else echo "Direccion Invalida."
    fi
done
flag=0
while [[ $flag -eq 0 ]]; do
    read -p $'Ingrese su numero telefonico:\n' telefono
    if [[ $telefono =~ $telefonoR ]]; then
        flag=1
    else echo "Telefono no valido"
    fi
done

##  Mostrar los datos
echo -e "Nombres:\t$nombres"
echo -e "Apellidos:\t$apellidos"
echo -e "Edad:\t\t$edad"
echo -e "Direccion:\t$direccion"
echo -e "Telefono:\t$telefono"

exit 0

Done!

隆Hola! Comparto mi desarrollo del reto.

S贸lo para practicar lo aprendido de opciones, implement茅 2 modificadores, -n que pide nombre y edad, -a que pide apellido y direcci贸n, y en cualquier caso, al final, se pide el tel茅fono.

#!/usr/bin/bash

# Script de practica para captura de informacion e implementacion de opciones

echo -e "Informacion del paciente\n"

while [ -n "$1" ];
do
        case "$1" in
        -n) read -p "Ingrese su nombre: " nombre
                read -p "Ingrese su edad: " edad
                echo "Hola $nombre de $edad a帽os";;
        -a) read -p "Ingrese su apellido: " apellido
                read -p "Ingrese su direccion: " direccion
                echo "Tu apellido es $apellido y vives en $direccion";;
        --) shift
                break
                ;;
        *) echo "El modificador ingresado es invalido."
                exit 0;;
esac
shift
done

read -s -p "Ingresa tu telefono: " telefono
echo "Tu telefono es $telefono"

Les dejo screenshots de los resultados 馃槂





隆Saludos!

As铆 qued贸 mi reto:

#! /bin/bash
#Reto 2 validar informacion
#Autor Jose Suarez

idRegex=鈥橿([1-9]{1})([0-9]{3,7})$鈥
nombreRegex=鈥橿([A-Z]{1})([a-z])$鈥
apellidoRegex=鈥橿([A-Z]{1})([a-z]
)$鈥
edadRegex=鈥橿([0-9]{1,2})$鈥
paisRegex=鈥橿ARG|BRA|BOL|COL|CHI|ECU|PAR|PER|URU|VEN$鈥
direccionRegex=鈥橿([A-Z]{1})([a-z]\s)([0-9])$鈥
telefonoRegex=鈥橿([0-9]{8,12})$鈥

#Ingresar Identificacion
read -p 鈥淚ngrese su numero de identificacion (Entre 4 y 8 digitos):鈥 id
while [[ ! $id =~ $idRegex ]]
do
echo -e "La identificacion ingresada no es valida"
read -p 鈥淚ngrese su numero de identificacion (Entre 4 y 8 digitos):鈥 id
done

#Ingresar el apellido
read -p 鈥淚ngrese su Apellido (Primera Letra Mayuscula):鈥 apellido
while [[ ! $apellido =~ $apellidoRegex ]]
do
echo -e "Apellido no valido"
read -p 鈥淚ngrese su Apellido (Primera Letra Mayuscula):鈥 apellido
done

#Ingresar el nombre
read -p 鈥淚ngrese su Nombre (Primera Letra Mayuscula):鈥 nombre
while [[ ! $nombre =~ $nombreRegex ]]
do
echo -e "Nombre no valido"
read -p 鈥淚ngrese su Nombre (Primera Letra Mayuscula):鈥 nombre
done

#Ingresar la edad
read -p 鈥淚ngrese su edad:鈥 edad
while [[ ! $edad =~ $edadRegex ]]
do
echo -e "La edad no es valida"
read -p 鈥淚ngrese su edad:鈥 edad
done

#Ingresar el numero de telefono
read -p 鈥淚ngrese su Numero de Telefono (Debe contener entre 8 y 12 numeros):鈥 telefono
while [[ ! $telefono =~ $telefonoRegex ]]
do
echo -e "El telefono ingresado no es valido"
read -p 鈥淚ngrese un numero de telefono valido (Debe contener entre 8 y 12 numeros):鈥 telefono
done

#Ingresar Pais
read -p 鈥淚ngrese su pais de residencia (ARG|BRA|BOL|COL|CHI|ECU|PAR|PER|URU|VEN):鈥 pais
while [[ ! $pais =~ $paisRegex ]]
do
echo -e "El pais ingresado no es valido"
read -p 鈥淚ngrese su pais de residencia (ARG|BRA|BOL|COL|CHI|ECU|PAR|PER|URU|VEN):鈥 pais
done

#Ingresar la direccion
read -p 鈥淚ngrese su Direccion (Ej: Calle 11):鈥 direccion
while [[ ! $direccion =~ $direccionRegex ]]
do
echo -e "La direccion ingresada no es valida"
read -p 鈥淚ngrese su direccion (Ej: Calle 11):鈥 direccion
done

#Imprimir datos
echo -e "\n"
echo -e "**************************************"
echo -e "Datos Ingresados++"
echo -e "\n"
echo -e 鈥淣umero de Identificacion:鈥 $id
echo -e "Apellido: $apellido"
echo -e "Nombre: $nombre"
echo -e "Edad: $edad"
echo -e "Telefono: $telefono"
echo -e "Direccion: $direccion, $pais"
echo -e 鈥淺n鈥

Salida

# ! /bin/bash
# Soluci贸n del reto numero 2: Solicitar la informaci贸n de cada uno de ustedes como nombres, apellidos, edad, direcci贸n y n煤meros telef贸nicos; y posterior imprima toda la informaci贸n.

nombre=""
apellido=""
edad=0
direccion=""
telefono=0

echo "Otorgame tu informaci贸n por favor"
read -n10 -p "Ingrese un nombre:" nombre
echo -e ""
read -n15 -p "Ingrese su apellido:" apellido
echo -e ""
read -n2 -p "Ingrese su edad:" edad
echo -e ""
read -n25 -p "Ingrese una direcci贸n:" direccion
echo -e ""
read -n10 -p "Ingrese un numero de telefono:" telefono
echo -e ""
echo "Bienvenido $nombre $apellido, tienes $edad a帽os de edad, vives en $direccion y te podemos contactar al numero telefonico $telefono"

Resultado:

Otorgame tu informaci贸n por favor
Ingrese un nombre:usuario
Ingrese su apellido:toscano

Ingrese su edad:25
Ingrese una direcci贸n:residencia * calle *cr**a
Ingrese un numero de telefono:1234567890
Bienvenido usuario toscano, tienes 25 a帽os de edad, vives en residencia * calle *cr**a y te podemos contactar al numero telefonico 1234567890

Me cost贸 pero lo logre.

# !bin/bash
#Programa qu valida informacion personal
#Autor: Adan Galicia

nombreRegex='^[A-Z]\w{2,15}[ A-Za-z]*$' 
apellidosRegex='^[A-Z]\w{2,15}[ A-Za-z]*$'
edadRegex='^[0-9]{1,3}$'
direccionRegex='^[A-Z](\w\.?\-?#? ?){2,65}$'
numeroRegex='^([0-9]\-?){9}[0-9]$'

read -p "Favor de ingresar su Nombre(s): " nombre
read -p "Favor de ingresar su Apellido(s): " apellido
read -p "Favor de ingresar su edad: " edad
read -p "Favor de ingresar su direccion: " direccion
read -p "Favor de ingresar su numero telefonico: " numero

if [[ $nombre =~ $nombreRegex ]]; then
    echo -e "\n Su nombre(s) es: $nombre"
else
    echo -e "\n Ese nombre(s) no es valido"
fi

if [[ $apellido =~ $apellidosRegex ]]; then
    echo -e "\n Su apellido(s) es: $apellido"
else
    echo -e "\n Ese apellido(s) no es valido"
fi

if [[ $edad =~ $edadRegex ]]; then
    echo -e "\n Su edad es: $edad"
else
    echo -e "\n Esa edad no es valida"
fi

if [[ $direccion =~ $direccionRegex ]]; then
    echo -e "\n Su direccion es: $direccion"
else
    echo -e "\n Esa direccion no es valida"
fi

if [[ $numero =~ $numeroRegex ]]; then
    echo -e "\n Su numero telefonico es: $numero"
else
    echo -e "\n Ese numero telefonico no es valido"
fi
#!/bin/bash
#Solicitar la informaci贸n de cada uno de ustedes como nombres, apellidos, edad, direcci贸n y n煤meros telef贸nicos;
#posterior imprima toda la informaci贸n.
#by: devp
echo -e "\n"
echo "*** BIENVENIDOS AL PROGRAMA ***"
echo -e "\n"
#Datos
echo "*** SOLICITANDO DATOS  ***"
read -p "Nombre: " nombre
read -p "Apellido: " apellido
read -p "Edad: " edad
read -p "Direccion: " direccion
read -p "Tel茅fono: " telefono

echo "*** IMPRIMIENDO DATOS  ***"
echo "Nombre: " $nombre
echo "Apellido: " $apellido
echo "Edad: " $edad
echo "Direccion: " $direccion
echo "Telefono: " $telefono

aca la ejecucion:

bash-5.0# ./11_reto2.sh 
Ingrese su apellido:Minamino
Ingrese su nombre:Suichi
Ingrese su edad:67
aprendiendo a programar a su edad! Felicidades!
Ingrese su Telefono:0303456
el telefono no es valido
Ingrese su telefono (po favo):0303456789
Ingrese su Direccion:Evergreen Av. 742

################
 Datos Personales:
################
Apellido: Minamino
Nombre: Suichi
Edad: 67 Telefono: 0303456789
Direccion: Evergreen Av. 742
bash-5.0# 

./reto_02.sh
Ingrese los siguientes datos:
Nombres: Abner
Apellidos: Recinos
Edad: 30
Direcci贸n: America
No. Tel茅fono: 555-000-999

Procesando 鈥

Apellidos: Recinos
Nombre: Abner
edad: 30
Direcci贸n America
No. Tel茅fono: 555-000-999

\#!/bin/bash nombre="" apellido="" edad="" direccion="" numero\_telefonico="" echo "Ingresa tu nombre:" read nombre echo "Ingresa tu apellido:" read apellido echo "Ingresa tu edad:" read edad echo "Ingresa tu direcci贸n:" read direccion echo "Ingresa tu n煤mero telef贸nico:" read numero\_telefonico echo "Tu nombre es: $nombre" echo "Tu apellido es: $apellido" echo "Tu edad es: $edad" echo "Tu direcci贸n es: $direccion" echo "Tu n煤mero telef贸nico es: $numero\_telefonico"
```txt #!/bin/bash edadRegex="^([0-9]{1,2})$" nombreRegex="^([A-Z]{1}[a-z]{2,})$" apellidoRegex="^([A-Z]{1}[a-z]{2,})$" direccionRegex="^([A-Z]*)" celularRegex="^([0-9]{10})$" echo "Buenas tardes, le damos la bienvenida al sistema de registro de ingreso" echo "Por favor, ingrese la informaci贸n solicitada de manera clara y acorde a los requerimiento" echo -e "\n" read -p "Ingrese su primer nombre con, 煤nicamente, la primera letra en may煤scula " nombre while [[ ! $nombre =~ $nombreRegex ]] do echo "El nombre ingresado es invalido" read -p "Ingrese su primer nombre con, 煤nicamente, la primera letra en may煤scula " nombre done read -p "Ingrese su primer apellido con, 煤nicamente, la primera letra en may煤scula " apellido while [[ ! $apellido =~ $apellidoRegex ]] do echo "El apellido ingresado es invalido" read -p "Ingrese su primer apellido con, 煤nicamente, la primera letra en may煤scula " apellido done read -p "Ingrese su numero de celular, 煤nicamente en valores num茅ricos y con 10 numeros " celular while [[ ! $celular =~ $celularRegex ]] do echo "El numero de celular ingresado es invalido" read -p "Ingrese su numero de celular, 煤nicamente en valores num茅ricos " celular done read -p "Ingrese su edad en a帽os, 煤nicamente en valor num茅rico " edad while [[ ! $edad =~ $edadRegex ]] do echo "La edad ingresada es invalida" read -p "Ingrese su edad en a帽os, 煤nicamente en valor num茅rico " edad done read -p "Ingrese su direcci贸n " direccion while [[ ! $direccion =~ $direccionRegex ]] do echo "La direcci贸n ingresada es invalida" read -p "Ingrese su direcci贸n " direccion done mayor="" if [[ $edad -gt 18 ]]; then mayor="mayor de edad" else mayor="menor de edad" fi echo -e "\n" echo "----- DATOS PERSONALES -----" echo "Hola $nombre $apellido, ya que tienes $edad eres $mayor, con celular: $celular y direcci贸n: $direccion" ```
Mi c贸digo: ![]()![](https://static.platzi.com/media/user_upload/reto2-e24ea96d-0513-4909-9ba7-954f96df39d6.jpg)
```bash \# !/bin/bash \# Programa que solicita informacion de nombre, apellido, edad, direccion, numero telefonico, e imprime toda la informacion regexNombre='^\[a-zA-Z]+(\\?:\s\[a-zA-Z]+)\*$' regexApellido='^\[a-zA-Z]+(\\?:\s\[a-zA-Z]+)\*$' regexEdad='^(\[1-9]|\[1-9]\[0-9])$' regexDireccion='^(\[A-Za-z]\*)' regexNumTelef='^09\[0-9]{8}$' read -p "Ingresar un nombre: " nombre read -p "Ingresar un apellido: " apellido read -p "Ingresar una edad: " edad read -p "Ingresar una direccion: " direccion read -p "Ingresar un telefono celular: " numTelef if \[\[ $nombre =~ $regexNombre ]]; then echo "Nombre: $nombre" else echo "Error. Nombre no valido" fi if \[\[ $apellido =~ $regexApellido ]]; then echo "Apellido: $apellido" else echo "Error. Apellido no valido" fi if \[\[ $edad =~ $regexEdad ]]; then echo "Edad: $edad" else echo "Error. Edad no valida" fi if \[\[ $direccion =~ $regexDireccion ]]; then echo "Direccion: $direccion" else echo "Error. Direccion no valido" fi if \[\[ $numTelef =~ $regexNumTelef ]]; then echo "Numero de Telefono: $numTelef" else echo "Error. Numero de Telefono no valido" fi ```
```js #! /bin/bash/ #Stenon # Programa para cumplir el reto read -p "Introduce tus nombres: " FIRST_NAMES read -p "Introduce tus apellidos: " LAST_NAMES read -p "Introduce tu edad: " AGE read -p "Introduce tu direccion: " ADDRESS read -p "Introduce tu numero telefonico: " PHONE # validar nombre if [[ $FIRST_NAMES =~ ^[a-z,A-Z[:space:]]+$ ]]; then echo "Tu nombre es: $FIRST_NAMES" else echo "Tu nombre no puede contener numeros" fi #validar apellido if [[ $LAST_NAMES =~ ^[a-z,A-Z[:space:]]+$ ]]; then echo "Tu apellido es: $LAST_NAMES" else echo "Tu apellido no puede contener numeros" fi # Validar Edad if [[ $AGE =~ ^[0-9]{1,3}+$ ]]; then echo "Tu edad es: $AGE" else echo "Tu edad no puede contener caracteres" fi #validar direccion if [[ $ADDRESS =~ ^[a-z,A-Z,0-9[:space:]]+$ ]]; then echo "Tu direccion es: $ADDRESS" else echo "Hay un error en la direccion" fi #validar numero telefonico if [[ $PHONE =~ ^[0-9]+$ ]]; then echo "Tu numero de telefono es: $PHONE" else echo "Tu numero no puede contener caracteres" fi ```
\#! /bin/bash/ \#Stenon \# Programa para cumplir el reto read -p "Introduce tus nombres: " FIRST\_NAMES read -p "Introduce tus apellidos: " LAST\_NAMES read -p "Introduce tu edad: " AGE read -p "Introduce tu direccion: " ADDRESS read -p "Introduce tu numero telefonico: " PHONE \# validar nombre if \[\[ $FIRST\_NAMES =~ ^\[a-z,A-Z\[:space:]]+$ ]]; then echo "Tu nombre es: $FIRST\_NAMES" else echo "Tu nombre no puede contener numeros" fi \#validar apellido if \[\[ $LAST\_NAMES =~ ^\[a-z,A-Z\[:space:]]+$ ]]; then echo "Tu apellido es: $LAST\_NAMES" else echo "Tu apellido no puede contener numeros" fi \# Validar Edad if \[\[ $AGE =~ ^\[0-9]{1,3}+$ ]]; then echo "Tu edad es: $AGE" else echo "Tu edad no puede contener caracteres" fi \#validar direccion if \[\[ $ADDRESS =~ ^\[a-z,A-Z,0-9\[:space:]]+$ ]]; then echo "Tu direccion es: $ADDRESS" else echo "Hay un error en la direccion" fi \#validar numero telefonico if \[\[ $PHONE =~ ^\[0-9]+$ ]]; then echo "Tu numero de telefono es: $PHONE" else echo "Tu numero no puede contener caracteres" fi
`#! /bin/bash/` `#Stenon ` `# Programa para cumplir el reto` `read -p "Introduce tus nombres: " FIRST_NAMES` `read -p "Introduce tus apellidos: " LAST_NAMES` `read -p "Introduce tu edad: " AGE` `read -p "Introduce tu direccion: " ADDRESS ` `read -p "Introduce tu numero telefonico: " PHONE` `# validar nombre` `if [[ $FIRST_NAMES =~ ^[a-z,A-Z[:space:]]+$ ]]; then` ` echo "Tu nombre es: $FIRST_NAMES" ` `else ` ` echo "Tu nombre no puede contener numeros" ` `fi` `#validar apellido` `if [[ $LAST_NAMES =~ ^[a-z,A-Z[:space:]]+$ ]]; then` ` echo "Tu apellido es: $LAST_NAMES" ` `else ` ` echo "Tu apellido no puede contener numeros" ` `fi` `# Validar Edad` `if [[ $AGE =~ ^[0-9]{1,3}+$ ]]; then` ` echo "Tu edad es: $AGE" ` `else ` ` echo "Tu edad no puede contener caracteres" ` `fi` `#validar direccion` `if [[ $ADDRESS =~ ^[a-z,A-Z,0-9[:space:]]+$ ]]; then` ` echo "Tu direccion es: $ADDRESS" ` `else ` ` echo "Hay un error en la direccion" ` `fi` `#validar numero telefonico` `if [[ $PHONE =~ ^[0-9]+$ ]]; then` ` echo "Tu numero de telefono es: $PHONE" ` `else ` ` echo "Tu numero no puede contener caracteres" ` `fi`
  1 #!/bin/bash
  2
  3 # Reto 2
  4
  5 nombre_regex='^[A-Za-z ]+$'
  6 apellido_regex='^[A-Za-z ]+$'
  7 edad_regex='^[0-9]{1,3}$'
  8 direccion_regex='^[A-Za-z0-9 ]+$'
  9 telefono_regex='^[0-9]{6,10}$'
 10
 11 read -p "Ingresa tu nombre: " nombre
 12 read -p "Ingresa tu apellido: " apellido
 13 read -p "Ingresa tu edad: " edad
 14 read -p "Ingresa tu direccion: " direccion
 15 read -p "Ingresa tu telefono: " telefono
 16
 17 if [[ $nombre =~ $nombre_regex ]]; then
 18   echo -e "\nTu nombre es $nombre"
 19 else
 20   echo -e "\nNombre es inv谩lido"
 21 fi
 22
 23 if [[ $apellido =~ $apellido_regex ]]; then
 24   echo -e "\nTu apellido es $apellido"
 25 else
 26   echo -e "\nApellido es inv谩lido"
 27 fi
 28
 29 if [[ $edad =~ $edad_regex ]]; then
 30   echo -e "\nTu edad es $edad"
 31 else
 32   echo -e "\nEdad es inv谩lido"
 33 fi
 34 if [[ $direccion =~ $direccion_regex ]]; then
 35   echo -e "\nTu direcci贸n es $direccion"
 36 else
 37   echo -e "\nDirecci贸n es inv谩lida"
 38 fi
 39
 40 if [[ $telefono =~ $telefono_regex ]]; then
 41   echo -e "\nTu tel茅fono es $telefono"
 42 else
 43   echo -e "\nTel茅fono es inv谩lido"
 44 fi

Reto completado

1. \#!/bin/bash 2. 3. read -p "Introduce tu nombre: " nombre 4. read -p "Introduce tus apellidos: " apellidos 5. read -p "Introduce tu edad: " edad 6. read -p "Introduce tu direcci贸n: " direccion 7. read -p "Introduce tu n煤mero telef贸nico: " telefono 8. 9. echo "Informaci贸n recopilada:" 10. echo "Nombre: $nombre" 11. echo "Apellidos: $apellidos" 12. echo "Edad: $edad" 13. echo "Direcci贸n: $direccion" 14. echo "N煤mero telef贸nico: $telefono" 15.
`#!/bin/bash` `#Programa que solicita los datos del usuario y los imprime en pantalla` `#Autor: Jesus Reyes - `[`[email protected]`](mailto:[email protected]) `name=""` `segName=""` `apPaterno=""` `apMaterno=""` `edad=0` `` date=`date` `` `fileSystem=$(df -kh)` `read -p "Ingresa tu nombre:" name` `read -p "Ingresa tu segundo Nombre:" segName` `read -p "Ingresa tu Apellido Paterno:" apPaterno` `read -p "Ingresa tu Apellido Materno:" apMaterno` `read -p "Ingresa tu Edad:" edad` `echo "Estos son tus datos al dia $date"` `echo "Estas logueado como: $LOGNAME"` `echo -e "Bienvenido $apPaterno $apMaterno $name $segName $edad years old"` `echo -e "este es tu filesystem actual:"` `echo -e "$fileSystem\n"`

Mi soluci贸n

# !/bin/bash
# Programa para ejemplificar como capturar informaci贸n del usuario y validarla utilizando expresiones regulares
# Author: Francisco Garcia - [email protected]

nombresRegex="^[a-z][A-Z]{20}$"
apellidosRegex="^[a-z][A-Z]{20}$"
edadRegex="^[0-9]{2}$"
direccionRegex="^[0-9]+(?:[A-Za-z]+\s*)*(?:[#\-\s]+[0-9A-Za-z\s]+)*$"
numeroTelefonoRegex="^[0-9]{10}$"

echo "Informaci贸n personal"
read -n20 -p "Ingrese nombres: " nombres
echo -e "\n"
read -n20 -p "Ingrese apellidos: " apellidos
echo -e "\n"
read -n2 -p "Ingrese edad: " edad
echo -e "\n"
read -n50 -p "Ingrese direccion: " direccion
echo -e "\n"
read -n10 -p "Ingrese numero telefonico: " numeroTelefono

# Validaci贸n Nombres
if [[ $nombres =~ $nombresRegex ]]; then
    echo "Nombres: $nombres validos"
else
    echo "Nombres: $nombre invalido"
fi

# Validaci贸n Apellidos
if [[ $apellidos =~ $apellidosRegex ]]; then
    echo "Apellidos $apellidos validos"
else
    echo "Apellidos $apellidos invalidos"
fi

# Validaci贸n Edad
if [[ $edad =~ $edadRegex ]]; then
    echo "Edad $edad valida"
else
    echo "Edad $edad invalida"
fi

# Validaci贸n Direccion
if [[ $direccion =~ $direccionRegex ]]; then
    echo "Direccion $direccion valida"
else
    echo "Direccion $direccion invalida"
fi

# Validaci贸n Numero de Telefono
if [[ $numeroTelefono =~ $numeroTelefonoRegex ]]; then
    echo "Edad $numeroTelefono valido"
else
    echo "Edad $numeroTelefono invalido"
fi


echo "Nombres: $nombres, Apellidos: $apellidos"
echo "Edad: $edad"
echo "Direccion: $direccion"
echo "Numero de Telefono: $numeroTelefono"

\#!/bin/bash echo "ingrese nombre: " read var1 echo "ingrese apellidos: " read var2 echo "ingrese la direcci贸n: " read var3 echo "Ingrese el n煤mero telefonico: " read var4 echo "Nombre : $var1" echo "Apellido: $var2" echo "Direcci贸n: $var3" echo "N煤mero telefonico: $var4"
<# Ingresar Datos Manera 2
nombreregex='^[a-zA-Z]*$' #Permite solo letras ya sean en mayusculas o minusculas
apellidoregex='^[a-zA-Z]*$' #Permite solo letras ya sean en mayusculas o minusculas
direccionregex='^[\w]|[_a-zA-Z0-9" "]*$' #Esta Variable Regex permite Ingresar Valores Alfanumericos (letras, espacios, numero y simbolos)
edadregex='^[0-9]{1}|[0-9]{2}|[0-9]{3}$' #Permite ingresar solo numero ya sean de una unidad, decenas o centenas.
numeroregex='^[0-9]{8}$' #Permite ingresar solo numeros con un rango de valores de 8.

read -p "Ingrese su Nombre: " nombre
read -p "Ingrese su Apellido: " apellido
read -p "Ingrese su Edad: " edad
read -p "Ingrese su Direccion: " direccion
read -p "Ingrese su Numero Telefonico: " numero
echo -e "\n"
echo "*************** Datos Ingresado **************"

if [[ $nombre =~ $nombreregex ]]; then
echo "Nombre: $nombre Ingresado"
else
echo "Nombre: $nombre Invalido"
fi

if [[ $apellido =~ $apellidoregex ]]; then
echo "Apellido: $apellido Ingresado"
else
echo "Apellido: $apellido Invalido"
fi

if [[ $edad =~ $edadregex ]]; then
echo "Edad: $edad Ingresada"
else
echo "Edad: $edad Invalida"
fi

if [[ $direccion =~ $direccionregex ]]; then
echo "Direccion: $direccion Ingresada"
else
echo "Direccion: $direccion Invalida"
fi

if [[ $numero =~ $numeroregex ]]; then
echo "Numero de Telefono: $numero Ingresado"
else
echo "Numero de Telefono: $numero Invalido"
fi> 
<# Ingresar Datos Manera 1
read -p "Ingrese su Nombre: " nombre
read -p "Ingrese su Apellido: " apellido
read -p "Ingrese su Edad: " edad
read -p "Ingrese su Direccion: " direccion
read -n8 -p "Ingrese su Numero Telefonico: " numero
echo -e "\n"
echo "**************** Datos Ingresados ************"
echo "Nombre: $nombre"
echo "Apellido: $apellido"
echo "Edad: $edad"
echo "Direccion: $direccion"
echo "Numero Telefonico: $numero"> 

#!/bin/bash

Funci贸n para validar nombres y apellidos

validate_name() {
local name="$1"
if ! [[ $name =~ ^[A-Za-z\ ]+$ ]]; then
echo "Nombre o apellido inv谩lido"
exit 1
fi
}

Funci贸n para validar la edad

validate_age() {
local age="$1"
if ! [[ $age =~ ^[0-9]+$ ]]; then
echo "Edad inv谩lida"
exit 1
fi
}

Funci贸n para validar la direcci贸n

validate_address() {
local address="$1"
if [[ ! $address ]]; then
echo "Direcci贸n inv谩lida"
exit 1
fi
}

Funci贸n para validar n煤meros telef贸nicos

validate_phone() {
local phone="$1"
if ! [[ $phone =~ ^[0-9]+$ ]]; then
echo "N煤mero telef贸nico inv谩lido"
exit 1
fi
}

Solicitar informaci贸n del usuario

read -p "Ingrese su nombre: " name
read -p "Ingrese su apellido: " lastname
read -p "Ingrese su edad: " age
read -p "Ingrese su direcci贸n: " address
read -p "Ingrese su n煤mero telef贸nico: " phone

Validar la informaci贸n ingresada

validate_name "$name"
validate_name "$lastname"
validate_age "$age"
validate_address "$address"
validate_phone 鈥$phone鈥

Imprimir la informaci贸n

echo "Informaci贸n del usuario:"
echo "Nombre: $name"
echo "Apellido: $lastname"
echo "Edad: $age"
echo "Direcci贸n: $address"
echo 鈥淣煤mero telef贸nico: $phone鈥

Reto 2 Resuelto

# !/bin/bash
# Reto 2 Solicitar la informaci贸n de cada uno de ustedes como Edads, Direcci贸ns, edad, direcci贸n y n煤meros telef贸nicos; y posterior imprima toda la informaci贸n.
# Autor: Ricardo Portillo - @spyderp

name=""
lastName=""
age=""
address=""
phone=0

validateText="^[A-Za-z]{3,}$"
validateAge="^[0-9]{2}"
validatePhone="^[0-9]{3,4}-[0-9]{4}$"

echo "#### RETO 2 ####"
read -p "Ingresar su nombre:" name
read -p "Ingresar su apellido:" lastName
read -p "Ingresar su edad:" age
read -p "Ingresar su direcci贸n:" address
read -p "Ingresar su n煤mero de tel茅fono (0000-00000):" phone

#Validaci贸n Identificaci贸n
if [[ $name =~ $validateText ]]; then
    echo "Nombre: $name"
else
    echo "Nombre: Invalido"
fi

if [[ $lastName =~ $validateText ]]; then
    echo "Apellido: $lastName"
else
    echo "Apellido: Invalido"
fi

if [[ $age =~ $validateAge ]]; then
    echo "Edad: $age"
else
    echo "Edad: Invalido"
fi

echo "Direcci贸n: $address"

if [[ $phone =~ $validatePhone ]]; then
    echo "Tel茅fono: $phone"
else
    echo "Tel茅fono: Invalido"
fi

Mi codigo

# !/bin/bash
regexedad='^[0-9]{1,10}$'
regexnombre='^[a-zA-Z帽脩谩茅铆贸煤脕脡脥脫脷]+$'
regexapellido='^[a-zA-Z帽脩谩茅铆贸煤脕脡脥脫脷]+$'
regexdireccion='^([A-Z]*)'
regexnumero='^[0-9]{1,10}$'

val_name="false"
val_edad="false"
val_apellido="false"
val_direccion="false"
val_numero="false"
while [ "$val_name" == "false" ]
do
read -p "Ingrese su nombre: " nombre
if [[ $nombre =~ $regexnombre ]]; then
    echo "nombre valido"
    val_name="true"
    else
        echo "nombre invalido"
        val_name="false"
        fi
done

while [ "$val_edad" == "false" ]
do
read -p "Ingrese su edad: " edad
if [[ $edad =~ $regexedad ]]; then
    echo "edad valida"
    val_edad="true"
    else
        echo "edad invalida"
        val_edad="false"
        fi
done

while [ "$val_apellido" == "false" ]
do
read -p "Ingrese su apellido: " apellido
if [[ $apellido =~ $regexapellido ]]; then
    echo "apellido valido"
    val_apellido="true"
    else
        echo "apellido invalido"
        val_apellido="false"
        fi
done

while [ "$val_direccion" == "false" ]
do
read -p "Ingrese su direcc铆on: " direccion
if [[ $direccion =~ $regexdireccion ]]; then
    echo "direcci贸n valida"
    val_direccion="true"
    else
        echo "direccion invalida"
        val_direccion="false"
        fi
done
while [ "$val_numero" == "false" ]
do
read -p "Ingrese su numero telefonico: " numero
if [[ $numero =~ $regexnumero ]]; then
    echo "numero valido"
    val_numero="true"
    else
        echo "numero invalido"
        val_numero="false"
        fi
done
echo -e "Nombre= $nombre \n Apellido= $apellido \n Direcci贸n= $direccion \n Edad= $edad \n Telefono= $numero"

Mi aporte

!/bin/bash

Solicitar la informacion de cada uno de ustedes cmo nombres, apellidos, edad, direcion y numeros telefonicos y posterior imprimir toda la informacion

Alejandro Diaz -

Names="鈥
Apellidos=鈥濃
Edad=鈥濃
Direccion=鈥濃
NumeroTelefonico=鈥"

echo "LLENAR LA SIGUIENTE INFORMACION"
read -p 鈥淣ombres:鈥 Names
read -p "Apellidos: " Apellidos
read -p 鈥淓dad:鈥 Edad
read -p "Direccion: " Direccion
read -p "WhatsApp: " NumeroTelefonico
echo -e 鈥淺n\n\n"
echo -e " Nombre completo: $Names $Apellidos \n Edad: $Edad \n Direccion: $Direccion \n WhatsApp: $NumeroTelefonico鈥

Con emojis y tal:

#!/bin/bash
#Ejercicio practico: solicitud e impresion de datos personales tipo formulrios
#Autor: Sergio A.Vargas

edadRX='^([1-9]{1,2})$'
nombreRX='^([A-Z]{1})([a-z]*)$'
apellidoRX='^([A-Z]{1})([a-z]*)$'
direccionRX='^([A-Z]{1}*)([a-z]*\s)([0-9]*)$'
telefonoRX='^([0-9]{10})$'

#Solicitud de datos
echo "Por favor, ingresa tus datos personales: "
read -p "Ingresa tu nombre: " nombre
read -p "Ingresa tu apellido: " apellido
read -p "Ingresa tu edad: " edad
read -p "Ingresa tu direccion: " direc
read -p "Ingresa tu numero telefonico: " phone

#Validacion nombre
if [[ $nombre =~ $nombreRX ]]; then
    echo -e "nombre valido \U0001F44D"
else
    echo -e "nombre invalido \U0001F44E"
fi

#Validacion apellido
if [[ $apellido =~ $apellidoRX ]]; then
    echo -e "apellido valido \U0001F44D"
else
    echo -e "apellido invalido \U0001F44E"
fi

#Validacion edad
if [[ $edad =~ $edadRX ]]; then
    echo -e "edad valida \U0001F44D"
else
    echo -e "edad invalida \U0001F44E"
fi

#Validacion telefono
if [[ $phone =~ $telefonoRX ]]; then
    echo -e "telefono valido \U0001F44D"
else
    echo -e "telefono invalido \U0001F44E"
fi

#Validacion direccion
if [[ $direc =~ $direcionRX ]]; then
    echo -e "direccion valida \U0001F44D"
else
    echo -e "direccion invalida \U0001F44E"
fi

echo "#################################"
echo "Tus datos: "
echo "Tu nombre completo es: $nombre $apellido"
echo "Tienes $edad anhos."
echo "Numero telefonico: $phone"
echo "Direccion: $direc"

#!/bin/bash
# Solicitar la informaci贸n de cada uno de ustedes como nombres, apellidos, edad, direcci贸n y n煤meros telef贸nicos; y posterior imprima toda la informaci贸n.

# Funci贸n para validar la informaci贸n ingresada mediante expresiones regulares
validate_input() {
  local input=$1
  local regex=$2

  if [[ ! $input =~ $regex ]]; then
    echo "Error: La informaci贸n ingresada no es v谩lida."
    exit 1
  fi
}

# Solicitar informaci贸n personal
read -p "Ingrese su nombre: " nombre
validate_input "$nombre" "^[A-Za-z脕脡脥脫脷谩茅铆贸煤帽脩]+$"

read -p "Ingrese sus apellidos: " apellidos
validate_input "$apellidos" "^[A-Za-z脕脡脥脫脷谩茅铆贸煤帽脩]+$"

read -p "Ingrese su edad: " edad
validate_input "$edad" "^[0-9]+$"

read -p "Ingrese su direcci贸n: " direccion

read -p "Ingrese su n煤mero de tel茅fono (formato: xxx-xxx-xxxx): " telefono
validate_input "$telefono" "^[0-9]{3}-[0-9]{3}-[0-9]{4}$"

# Imprimir la informaci贸n ingresada
echo "Informaci贸n personal:"
echo "Nombre: $nombre"
echo "Apellidos: $apellidos"
echo "Edad: $edad"
echo "Direcci贸n: $direccion"
echo "Tel茅fono: $telefono"

Mi Solucion

#!/bin/bash

# Solicitar informaci贸n personal
read -p "Ingrese su nombre completo: " nombre
read -p "Ingrese su edad: " edad
read -p "Ingrese su direcci贸n: " direccion
read -p "Ingrese su n煤mero telef贸nico: " telefono

# Validar nombre completo
if ! [[ $nombre =~ ^[a-zA-Z]+\s[a-zA-Z]+$ ]]; then
  echo "Error: El nombre ingresado es inv谩lido"
  exit 1
fi

# Validar edad
if ! [[ $edad =~ ^[0-9]+$ ]]; then
  echo "Error: La edad ingresada es inv谩lida"
  exit 1
fi

# Validar direcci贸n
if ! [[ $direccion =~ ^[a-zA-Z0-9\s#-]+$ ]]; then
  echo "Error: La direcci贸n ingresada es inv谩lida"
  exit 1
fi
#!/bin/bash
echo "Por favor ingrese su nombre, edad y ocupaci贸n"
echo "primero su nombre"
read  name
echo "Despu茅s su edad.."
read age
echo "Ahora su ocupaci贸n.."
read ocupation
echo "Hola $name tu edad e de $age y tu ocupaci贸n es $ocupation"

Reto resuleto

! /bin/bash

Programa para completar el reto 2

Autor: Liliana Palacios Mart铆n

nombre="鈥
apellido=鈥濃
edad=鈥濃
direcccion=鈥濃
telefono=鈥"

echo "Mi informaci贸n personal"
read -p 鈥淚ngresa tu nombre:鈥 nombre
echo -e "\n"
read -p 鈥淚ngresatu apellido:鈥 apellido
echo -e "\n"
read -p 鈥淚ngresa tu edad:鈥 edad
echo -e "\n"
read -p 鈥淚ngresa tu direccion:鈥 direcccion
echo -e "\n"
read -p 鈥淚ngresa tu telefono:鈥 telefono
echo "nombre:$nombre , apellido:$apellido"
echo -e "\n"
echo "edad: $edad"
echo -e "\n"
echo "direcccion: $direcccion"
echo -e "\n"
echo 鈥渢elefono: $telefono鈥

! /bin/bash

ingrear nombre y edad

read -p 鈥渋ngresar nombre鈥 nombre
read -p 鈥渋gresar edad鈥 edad

echo 鈥渉ola $nombre , tu edad es $edad鈥

#!/bin/bash
# Programa reto 2 
# Solicitar informaci贸n al usuario de
# nombre, apellidos, edad, direcci贸n, n煤meros telef贸nicos
# y despu茅s imprimir toda la informaci贸n
# Autor Joserra Marzo 2023

echo "Programa reto 2"
valEdad='^([1-9][0-9]*)$'
valNombre='^([A-Z a-z 帽脩]{2,35})$'
valTelefono='^([0-9]{6,9})$'

read -p "Nombre : " nombre

# Verificar Nombre 
if [[ ! $nombre =~ $valNombre ]]; then
        echo "valor nombre $nombre no v谩lido"
        exit
fi

read -p "Primer Apellido : " apellido1
# Verificar apellido1 
if [[ ! $apellido1 =~ $valNombre ]]; then
        echo "valor apellido $apellido1 no v谩lido"
        exit
fi

read -p "Segundo Apellido : " apellido2
# Verificar apellido2
if [[ ! $apellido2 =~ $valNombre ]]; then
        echo "valor apellido $apellido2 no v谩lido"
        exit
fi

read -n 33 -p "Direcci贸n : " domicilio
read -p "Edad : " edad
# Verificar edad 
if [[ ! $edad =~ $valEdad ]]; then
        echo "valor edad $edad no v谩lido"
        exit
fi

read -p "Tel茅fono : " telefono
# Verificar tel茅fono
if [[ ! $telefono =~ $valTelefono ]]; then
        echo "valor telefono  $telefono no v谩lido"
        exit
fi

echo -e "\nDatos correctos"
echo "Nombre y Apellidos : $nombre $apellido1 $apellido2"
echo "Direcci贸n : $domicilio"
echo "Edad : $edad"
echo "Tel茅fono : $telefono"

En la validaci贸n de nombres hay que incluir la 帽 as铆 :
valNombre=鈥橿([A-Z a-z 帽脩]{2,35})$

Mi programa Sencillito, pero con gusto

#!/bin/bash
#Programa que solicita los datos del usuario y los imprime en pantalla
#Autor: Jesus Reyes - [email protected]

name=""
segName=""
apPaterno=""
apMaterno=""
edad=0
date=`date`
fileSystem=$(df -kh)
read -p "Ingresa tu nombre:"  name
read -p "Ingresa tu segundo Nombre:" segName
read -p "Ingresa tu Apellido Paterno:" apPaterno
read -p "Ingresa tu Apellido Materno:" apMaterno
read -p "Ingresa tu Edad:" edad



echo "Estos son tus datos al dia $date"
echo "Estas logueado como: $LOGNAME"
echo -e "Bienvenido $apPaterno $apMaterno $name $segName  $edad years old"
echo -e "este es tu filesystem actual:"

# !/bin/bash
# Gets personal info and then print it
# Fernando Sanchez

#Declarar variables
name=""
lastname=""
age=""
address=""
cellPhone=""

echo "Type your data: "
read -p "Cual es tu nombre: " name
read -p "What is your last name: " lastname
read -p "How old are you: " age
read -p "Where do you live? " address
read -p "What is your cellphone? " cellPhone

echo -e "\n"
echo "Your data: "
echo "Your name: $name"
echo "Your lastname $address"
echo "Your age is $age"
echo "Your cellphone  is $cellPhone"

No es mucho pero es trabajo honesto.

# ! /bin/bash
# Este es un programa para resolver el reto: poder solicitar la informacion de usuario y despues imprimirlo.

name=""
lastName=""
age=0
address=""
numberPhone=0

echo "Enter your data"
read -p "What's your name? " name
read -p "What's your last Name? " lastName
read -p "How old are you? " age
read -p "What's your address? " address
read -p "What's your number phone? " numberPhone
echo -e "\n"
echo "Your full name is: $name $lastName"
echo "Your age is: $age"
echo "Your addres is: $address"
echo "Your number phone is: $numberPhone"

Hola, este es mi c贸digo:

#!/bin/bash
# Programa para resolver el reto: Solicitar la informaci贸n de cada uno de ustedes como nombres, apellidos, edad, direcci贸n y n煤meros telef贸nicos; y posterior imprima toda la informaci贸n.
# Autor: Sandra Guayambuco

soloLetrasRegex='^[a-zA-Z\s]+$'
telefonoRegex='^[0-9]{9}$'
edadRegex='^[0-9]{0,2}$|^100$'
noVacioRegex='^.+$'

nombre=""
apellido=""
edad=0
direccion=""
telefono=0

#validacion nombre
read -p "Inserte solo su nombre: " nombre
if [[ $nombre =~ $soloLetrasRegex ]] ; then
    echo "Su nombre es: $nombre "
else
    echo "Ese no es un nombre v谩lido"
fi

#validacion apellido
read -p "Inserte su apellido: " apellido
if [[ $apellido =~ $soloLetrasRegex ]]; then
    echo "Su apellido es: $apellido"
else
    echo "Ese no es un apellido v谩lido"
fi

#validacion edad 
read -p "Inserte su edad: " edad

if [[ $edad =~ $edadRegex ]]; then
    echo "Su edad es: $edad"
else
    echo "Esa edad es inv谩lida"
fi

#validacion  direccion
read -p "Inserte su direccion: " direccion

if [[ $direccion =~ $noVacioRegex ]]; then
    echo "Su direccion es: $direccion"
else
    echo "Esa direccion es inv谩lida"
fi


#validacion telefono
read -p "Inserte su numero telefonico: " telefono
if [[ $telefono =~ $telefonoRegex ]]; then
    echo "Su n煤mero de tel茅fono es: $telefono"
else
    echo "Ese n煤mero es inv谩lido"
fi

echo -e "\n Los datos almacenados son:\n "
echo "Nombre: $nombre"
echo "Apellido: $apellido"
echo "Edad: $edad"
echo "Direcci贸n: $direccion"
echo "Tel茅fono: $telefono"

Menciono que para zsh no me funcionaron los if para validar los datos, tuve que interpretar el script con bash

Mi c贸digo, basado un poco en otros comentarios:

# !/bin/bash
# Programa para solicitar informaci贸n personal del usuario utilizando el comando read
# Autor: Santiago Mu帽oz Ruiz

name=""
lastName=""
age=0
address=""
cellphoneNum=0
ageRegex="^[0-9]{1,2}$"
cellphoneNumRegex="^[0-9]{10}$"

echo "Programa de Informaci贸n Personal"
read -p "Ingresar tu nombre:" name
read -p "Ingresar tus apellidos:" lastName
read -p "Ingresar tu edad:" age
if [[ $age =~ $ageRegex ]]; then
  echo "Edad v谩lida"
else
  echo "Edad inv谩lida"
fi
read -p "Ingresar tu direcci贸n:" address
read -p "Ingresar tu n煤mero de tel茅fono:" cellphoneNum
if [[ $cellphoneNum =~ $cellphoneNumRegex ]]; then
  echo "N煤mero de tel茅fono v谩lido"
else
  echo "N煤mero de tel茅fono inv谩lido"
fi
echo "Tu nombre completo es $name $lastName, tienes $age a帽os, tu direcci贸n es $address y tu n煤mero de tel茅fono es $cellphoneNum"

#!/bin/bash
#reto2
#autor: Adrian

echo ------formulario-------
read -p 鈥渋ngrese su nombre:鈥 nombre
read -p 鈥渋ngrese su apellido:鈥 apellido
read -p 鈥渋ngrese su edad:鈥 edad
read -p 鈥渋ngrese su direccion:鈥 direccion
read -p 鈥渋ngrese su telefono:鈥 telefono
echo -----------------------

echo "Son estos sus datos"
echo $nombre $apellido $edad $direccion $telefono

  1 # ! /bin/bash
  2 # Este programa resuelve el reto numero 2 del curso.
  3
  4 echo "Bienvenido al programa de carga de datos personales"
  5 echo -e "\n"
  6 read -p "Ingrese su nombre:" nombre
  7 read -p "Ingrese su apellido:" apellido
  8 read -p "Ingrese su edad:" edad
  9 read -p "Ingrese su numero de telefono:" telefono
 10 read -p "Ingese su direccion:" direccion
 11 echo -e "\n"
 12 echo "Nombre y apellido: $nombre, $apellido"
 13 echo -e "\n"
 14 echo "Edad: $edad "
 15 echo -e "\n"
 16 echo "Numero de telefono: $telefono"
 17 echo -e "\n"
 18 echo "Direccion: $direccion"

Terminal:

C贸digo:

#!/bin/bash
# Request information from each of you such names, surmanes, age, address and telephone numbers; and then print all the information.
# Author: Cristian Camilo - Cristianco9

# Regular expression filter
nameRegEx='^[A-Za-z ]+$'
surnameRegEx='^[A-Za-z ]+$'
ageRegEx='^[0-9]{1,2}$'
addressRegEx='^[A-Za-z0-9 #-]+$'
phoneRegEx='^[0-9]{10}$'

# Prompt
echo "****************** SYSTEM REQUEST******************"
echo "********************* Sign In *********************"
echo -e "\n"

# Name
read -p "Please enter a name: " name
while [[ ! $name =~ $nameRegEx ]]; do
    echo -e "INCORRECT VALUE"
    read -p "Please enter a name: " name
done

# Surname
read -p "Please enter a surname: " surname
while [[ ! $surname =~ $surnameRegEx ]]; do
    echo -e "INCORRECT VALUE"
    read -p "Please enter a surname: " surname
done

# Age
read -p "Please enter a age: " age
while [[ ! $age =~ $ageRegEx ]]; do
    echo -e "INCORRECT VALUE"
    read -p "Please enter a age: " age
done

# Address
read -p "Please enter a address: " address
while [[ ! $address =~ $addressRegEx ]]; do
    echo -e "INCORRECT VALUE"
    read -p "Please enter a address: " address
done

# Phone
read -p "Please enter a phone number: " phone
while [[ ! $phone =~ $phoneRegEx ]]; do
    echo -e "INCORRECT VALUE"
    read -p "please enter a phone number: " phone
done
echo -e "\n"
echo "******************* Please wait *******************"
echo -e "\n"
echo "********** New user created successfully **********"

# New user assets
echo "User name: $name $surname"
echo "Age: $age"
echo "Address: $address"
echo "Phone: $phone"
echo "***************************************************"

Hola, c贸digo soluci贸n del reto:

#!/bin/bash 

echo "Ingrese sus datos:"
read -p " 1) Nombre: " nombre
read -p " 2) Edad: " edad
read -p " 3) Direccion: " direccion
read -p " 4) Tel茅fono: " telefono

echo "
  Hola se帽or(a) ${nombre}, con ${edad} a帽os de edad
  usted puede reclamar totalmente gratis un apartamento 
  en ${direccion}, para mayor informaci贸n contactenos 
  desde su n煤mero ${telefono} a traves de WhatsApp
  al n煤mero +123456789012.
"

!/bin/bash

Programa Reto 2 para captura de informacion y presentacion de resultados

Mario ernesto Alfaro [email protected]

echo Introduccion y presentacion de datos
nombre="鈥
Apellido=鈥濃
edad=鈥濃
direccion=鈥濃
telefono=鈥"
read -p "ingresa tu nombre: " nombre
read -p "ingresa tu apellido: " apellido
read -p "Ingresa tu edad: " edad
read -p "Ingresa direccion: " direccion
read -p "Ingresa tu numero telefonico: " numero telefonico
echo -e "\nTus datos personales"
echo -e 鈥淭u nombre es:鈥 $nombre $apellido
echo -e "Tu edad es: $edad
echo -e "Tu direccion es: " $direccion
echo - e "Tu numero telefonico es: " $numero telefonico

Anexo mi c贸digo con las validaciones del caso.

#!/bin/bash
read -p "Digita tu nombre: " nombre
read -p "Digita tu apellido: " apellido
read -p "digita tu edad: " edad
read -p "digita tu direcci贸n: " direccion
read -p "digita tu numero de telefono: " celular

nombreRegex='^[a-zA-Z]?([a-zA-Z]|\.| |-)+$'
edadRegex='^[0-9]{1,3}$'
direccionRegex='^[a-zA-Z0-9谩茅铆贸煤帽脕脡脥脷脩潞陋#,|\.| |-]+$'
celularRegex='^[0-9]{7,10}$'

if [[ $nombre =~ $nombreRegex ]]; then
    echo "valida"
else
    echo "invalida"
fi
if [[ $apellido =~ $nombreRegex ]]; then
    echo "valida"
else
    echo "invalida"
fi
if [[ $edad =~ $edadRegex ]]; then
    echo "valida"
else
    echo "invalida"
fi
if [[ $direccion =~ $direccionRegex ]]; then
    echo "valida"
else
    echo "invalida"
fi
if [[ $celular =~ $celularRegex ]]; then
    echo "valida"
else
    echo "invalida"
fi

Reto 2 Completado:

# Declarar dos variables e imprimir resultado
#autor: Senter05 - srgm2004

echo "Reto 2"
echo "cual es tu nombre?"
read name

echo "Cual es tu apellido?"
read apellido

echo "Cuantos anos tienes?"
read age

echo "Direccion:"
read adress

echo "Numero de telefono:"
read phone

echo "Tu nombre es: $name $apellido"
echo "Edad: $age"
echo "Direccion: $adress "
echo "Telefono: $phone "

Reto cumplido

# !/bin/bash
# Programa para ejemplificar la solicitud de informaci贸n como nombres, apellidos, edad, direcci贸n y n煤meros telef贸nicos; y posterior imprima toda la informaci贸n.
# Autor: Haward Tillero 12/06/2022

textoRegex='^[A-Z a-z]{2,35}$'
direccionRegex='^[A-Z a-z 0-9 .,#]{1,50}$'
telefonoRegex='^[0-9 -.+]{1,15}$'
i=0

echo -e "Solicitud de Datos"

#Nombres
while [[ $i -eq 0 ]]; do
    read -p "Ingrese su Nombre:" nombres
        if [[ $nombres =~ $textoRegex ]]; then
            ((i++))
        else
            echo "El Nombre ingresado $nombres no es v谩lido"
        fi
done

#Apellidos
i=0
while [[ $i -eq 0 ]]; do
    read -p "Ingrese su Apellido:" apellidos
        if [[ $apellidos =~ $textoRegex ]]; then
            ((i++))
        else
            echo "El Apellido ingresado $apellidos no es v谩lido"
        fi
done

#Direcci贸n
i=0
while [[ $i -eq 0 ]]; do
    read -p "Ingrese su Direcci贸n:" direccion
        if [[ $direccion =~ $direccionRegex ]]; then
            ((i++))
        else
            echo "Debe ingresar una direcci贸n"
        fi
done

#Tel茅fono
i=0
while [[ $i -eq 0 ]]; do
    read -p "Ingrese su N煤mero de Tel茅fono:" telefono
        if [[ $telefono =~ $telefonoRegex ]]; then
            ((i++))
        else
            echo "El N煤mero de Tel茅fono ingresado es inv谩lido"
        fi
done


#Mostrando los datos
echo -e "Datos Personales"
echo -e "----------------"
echo -e "Nombres: $nombres"
echo -e "Apellidos: $apellidos"
echo -e "Direcci贸n: $direccion"
echo -e "Tel茅lefono: $telefono"

Reto cumplido, desearia aprender un poco m谩s para desarrollar un mejor c贸digo

# !/bin/bash
# Programa para reto 2
# Autor: Carlos Hiram 05/06/2022

nombreRegex='^[A-Z a-z]{15}$'
apellidoRegex='^[A-Z a-z]{15}$'
edadRegex='^[0-9]{2}$'
direccionRegex='^[A-Z a-z] {20}$'
telefonoRegex='^[0-9]{10}$'
limpieza=$(clear)

echo "Programa del reto 2"
read -p "Ingrese su nombre: " nombre
echo -e "\n"
read -p "Ingrese su apellido: " apellido
echo -e "\n"
read -p "Ingrese su edad: " edad
echo -e "\n"
read -p "Ingrese su direcci贸n: " direccion
echo -e "\n"
read -p "Ingrese su telefono: " telefono
echo -e "\n"

echo "$limpieza"

echo "Validaci贸n de datos"

if [[ $nombre =~ $nombreRegex ]]; then
    echo "el nombre ingresado tiene como m谩ximo 15 c谩racteres"
else
    echo "Como recordatorio, el nombre debe contener solo letras y como m谩ximo son 15 c谩racteres"
fi

if [[ $apellido =~ $apellidoRegex ]]; then
    echo "El apellido ingresado tiene como m谩ximo 15 c谩racteres"
else
    echo "Como recordatorio, el apellido debe contener solo letras y como m谩ximo son 15 c谩racteres"
fi

if [[ $edad =~ $edadRegex ]]; then
    echo "La edad ingresada es v谩lida"
else
    echo "La edad introducida inv谩lida, recuerda usar n煤meros"
fi

if [[ $direccion =~ $direccionRegex ]]; then
    echo "La direccion ingresada es v谩lida"
else
    echo "La direccion introducida inv谩lida, recuerda usar el siguiente formato ciudad estado"
fi

if [[ $telefono =~ $telefonoRegex ]]; then
    echo "El telefono ingresado es v谩lido"
else
    echo "El telefono introducido inv谩lido, recuerda usar n煤meros"
fi

echo "**************************************************"
echo "                DATOS PERSONALES                  "
echo "**************************************************"
echo "Nombre completo: $nombre $apellido"
echo "Edad: $edad"
echo "Direcci贸n: $direccion"
echo "Numero Telefonico: $telefono"
echo "**************************************************"

Para generar y probar expresiones regulares

https://regexr.com/

Yo realice otra confibguraci贸n con fecha que me parece interesante manejarlo:

cat 2_validar_informaci贸n.sh

!/bin/sh

el presente script ejecutar diferentes validaciones

Definir la configuraci贸n de cada variable

Val_number_ID=鈥橿[0-9]{5,10}$鈥
Val_selecc_option=鈥橿Primero|Segundo|Tercero$鈥
Val_date_number=鈥橿[0-9]{4}-[0-9]{2}-[0-9]{2}$鈥

Ingresar los datos solicitados

read -p "Por favor ingrese el numero de su ID: " number_ID
read -p "Por favor ingrese la opci贸n entre Primero,Segundo,Tercero: " selecc_option
read -p "Por favor ingrese la fecha en formato yyyy-MM-dd: " date_number

Validaci贸n del number_ID

if [[ $number_ID =~ $Val_number_ID ]];
then
echo "La identificaci贸n provista $number_ID es CORRECTA!!!"
else
echo "La identificaci贸n provista $number_ID es INVALIDA"
fi

Validaci贸n del selecc_option

if [[ $selecc_option =~ $Val_selecc_option ]];
then
echo "La opci贸n provista $selecc_option es CORRECTA!!!"
else
echo "La opci贸n provista $selecc_option es INVALIDA"
fi

Validaci贸n del date_number

if [[ $date_number =~ $Val_date_number ]];
then
echo "La fecha provista $date_number es CORRECTA!!!"
else
echo "La fecha provista $date_number es INVALIDA"
fi

sh 2_validar_informaci贸n.sh
Por favor ingrese el numero de su ID: 123456789
Por favor ingrese la opci贸n entre Primero,Segundo,Tercero: Primero
Por favor ingrese la fecha en formato yyyy-MM-dd: 2001-12-20
La identificaci贸n provista 123456789 es CORRECTA!!!
La opci贸n provista Primero es CORRECTA!!!
La fecha provista 2001-12-20 es CORRECTA!!!

#!/bin/bash

reg_name="^\w{2,32}$"
reg_edad="^[0-9]{1,2}$"
reg_direccion="^([A-Za-z0-9]{12,128})"
reg_phone="^[0-9]{9}$"

nombre=""; apellido=""; edad=""; direccion=""; phone=""

read -p "Ingrese su nombre (2-32 caracteres): " nombre
read -p "Ingrese su apellido (2-32 caracteres): " apellido
read -p "Ingrese su direccion (12-128 caracteres): " direccion
read -p "Ingrese su edad (1-2 digitos): " edad
read -p "Ingrese su numero telefonico (9 digitos): " phone


if ! [[ $nombre =~ $reg_name && $apellido =~ $reg_name && $edad =~ $reg_edad && $direccion =~ $reg_direccion && $phone =~ $reg_phone ]]; then
  echo "Ingrese datos validos"
  return 1
else
  echo -e "Nombre: ${nombre}\nApellido: ${apellido}\nDireccion: ${direccion}\nTelefono: ${phone}"
fi

aca mi codigo humilde

# !/bin/bash
# Reto numero 2: solicitar informacion del usuario e impresion en pantalla.
# Autor: Santiago Molina Iba帽ez - [email protected]

nombre=""
apellidos=""
edad=0
direccion=""
numero_telefonico=0

echo "Solicitud de informaci贸n"
read -p "Cual es su nombre?:" nombre
read -p "Cual son sus apellidos?:" apellidos
read -p "Cual es su edad?:" edad
read -p "Cual es su direccion?:" direccion
read -p "Cual es su numero telefonico?:" numero_telefonico

echo -e "\nestos son sus datos:\nnombre:$nombre \napellidos:$apellidos \nedad:$edad \ndireccion:$direccion \nnumero telefonico:$numero_telefonico"
# !/bin/bash
# Reto 2

echo "Reto 2"
read -n20 -p "Ingrese su nombre: " name
read -n20 -p "Ingrese su apellido: " last_name
read -n3 -p "Ingrese su edad: " age
read -n20 -p "Ingrese su direccion: " adress
read -n7 -p "Ingrese su n煤mero telef贸nico: " number
echo -e "\n"
echo "Hola $name $last_name, usted tiene $age a帽os"
echo -e "\n"
echo "Usted vive en $adress,y tu numero telef贸nico es $number"
#! /bin/bash
# Reto 2
#聽Christian Rosales @crimirox
name=""
lastname=""
age=""
address=""
phoneNumber=""

read -p "Ingreso el nombre: " name
read -p "Ingreso el apellido: " lastname
read -p "Ingreso la edad: " age
read -p "Ingreso la direcci贸n donde reside: " address
read -p "Ingreso el n煤mero telefonico: " phoneNumber

echo "Se ha registrado la persona $name $lastname que tiene la edad de $age que reside actualmente en $address y cuenta con el n煤mero telef贸nico: $phoneNumber"

!/bin/bash

Programa reto 2

nombre="鈥
apellido=鈥濃
edad=鈥濃
direccion=鈥濃
nroTelefonico=鈥"

read -p "Ingrese su nombre: " nombre
read -p "Ingrese su apellido: " apellido
read -p "Ingrese su direccion: " direccion
read -p "Ingrese su nroTelefonico: " nroTelefonico
echo -e "\nSus datos personales"
echo -e "Su nombre es: $nombre \nApellido: $

Resultado
##########
Sus datos personales
Su nombre es: FEDERICO
Apellido: HERRERA
Direccion:AMIGOSTA12
NroTelefonico: 331133455
Todos sus datos han sido registrados

Aqu铆 mi soluci贸n:

#!/bin/bash
#Programa para introducir datos y imprimirlos por pantalla con validaci贸n:
#nombres, apellidos, edad, direcci贸n, m贸vil

nombreRegex='^[a-zA-Z 谩茅铆贸煤帽脕脡脥脫脷脩]{3,31}$'
apellidosRegex='^[a-zA-Z 谩茅铆贸煤帽脕脡脥脫脷脩]{3,50}$'
edadRegex='^1?[0-9]?[0-9]$'
direccionRegex='^[a-zA-Z0-9谩茅铆贸煤帽脕脡脥脷脩潞陋, ]+$'
movilRegex='^\+?[0-9]+$'

echo "Imprimir por pantalla"
read -p "Ingresar nombre: " nombre
read -p "Ingresar apellidos: " apellidos
read -p "Ingresar edad: " edad
read -p "Ingresar direcci贸n: " direccion
read -p "Ingresar m贸vil: " movil

#Validar nombre
if [[ $nombre =~ $nombreRegex ]]; then
    echo "Nombre $nombre v谩lido"
else
    echo "Nombre $nombre NO v谩lido"
fi

#Validar apellidos
if [[ $apellidos =~ $apellidosRegex ]]; then
    echo "Apellidos $apellidos v谩lido"
else
    echo "Apellidos $apellidos NO v谩lido"
fi

#Validar edad
if [[ $edad =~ $edadRegex ]]; then
    echo "Edad $edad v谩lido"
else
    echo "Edad $edad NO v谩lido"
fi

#Validar direcci贸n
if [[ $direccion =~ $direccionRegex ]]; then
    echo "Direcci贸n $direccion v谩lido"
else
    echo "Direcci贸n $direccion NO v谩lido"
fi

#Validar m贸vil
if [[ $movil =~ $movilRegex ]]; then
    echo "M贸vil $movil v谩lido"
else
    echo "M贸vil $movil NO v谩lido"
fi

Mi C贸digo

# !/bin/bash
# Programa para ejemplificar como capturar la informaci贸n del usuario y validarla utilizando
# expresiones regulares
# Autor: Angel Estrada

echo "Solicita su informacion"
read -p "Nombre(s): " Nombre
read -p "Apellido Paterno: " ApePat
read -p "Apellido Materno: " ApeMat
read -p "Edad: " edad
read -p "Telefono: " Tel
echo -e "\n Direccion de Usuario" 
read -p "Calle: " DirCalle
read -p "N煤mero Exterior: " DirNumExt
read -p "N煤mero Interior (Opcional): " DirNumInt
read -p "Colonia: " DirCol
read -p "Municipio/Delegacion: " DirMun
read -p "Estado: " DirEst
read -p "Codigo Postal: " DirCP


#Imprime datos:
echo -e "\n\nVerifique su Informaci贸n\n"
echo "Nombre de Usuario: $Nombre $ApePat $ApeMat"
echo "Edad: $edad"
echo "Telefono Celular: $Tel"
echo -e "Direccion: \nCalle $DirCalle No.$DirNumExt Int.$DirNumInt\nColonia $DirCol, $DirMun, Estado de $DirEst\nCP: $DirCP"

Mi soluci贸n al reto

Repositorio

#!/bin/bash
# Program:
#   This program allows you to get name, lastname, age and address from user.
# Path: 2_interactive_scripts/7_challenge_2-basic-info.sh
# Author:
#  Cristian Rinc贸n
#
# How to run this script:
# ./2_interactive_scripts/7_challenge_2-basic-info.sh

name=""
lastname=""
age=""
address=""

echo "Basic info program"
echo "========================="

read -p "Enter your name: " name
read -p "Enter your lastname: " lastname
read -p "Enter your age: " age
read -p "Enter your address: " address

echo "Your name is $name"
echo "Your lastname is $lastname"
echo "Your age is $age"
echo "Your address is $address"
echo -e "\n"

Comparto mi codigo para el Reto:

#!/bin/bash

# Cadenas de validacion
validaNombre='^[a-zA-Z]+[a-zA-Z ]*$'
validaApellido='^[a-zA-Z]+[a-zA-Z ]*$'
validaEdad='^([1-9]|[1-9][0-9])$'
validaDireccion='^[a-zA-Z]+[a-zA-Z0-9]*'
validaTelefono='^[0-9]{9}$'

read -p "Ingrese su Nombre            : " nombre
read -p "Ingrese su Apellido          : " apellido
read -p "Ingrese su Edad              : " edad
read -p "ingrese su Direccion         : " direccion
read -p "ingrese su Numero de Telefono: " telefono

rsNombre="NOMBRE INVALIDO"
rsApellido="APELLIDO INVALIDO"
rsEdad="EDAD INVALIDA"
rsDireccion="DIRECCION INVALIDA"
rsTelefono="TELEFONO INVALIDO"

if [[ $nombre =~ $validaNombre ]]; then
    rsNombre="NOMBRE VALIDO"
fi

if [[ $apellido =~ $validaApellido ]]; then
    rsApellido="APELLIDO VALIDO"
fi

if [[ $edad =~ $validaEdad ]]; then
    rsEdad="EDAD VALIDA"
fi

if [[ dDireccion =~ $validaDireccion ]]; then
    rsDireccion="DIRECCION VALIDA"
fi

if [[ $telefono =~ $validaTelefono ]]; then
    rsTelefono="TELEFONO VALIDO"
fi

echo -e "\n"
echo "Los datos ingresado son los siguientes:"
echo "---------------------------------------"
echo -e "Nombre            : $nombre ($rsNombre)"
echo -e "Apellido          : $apellido ($rsApellido)"
echo -e "Edad              : $edad ($rsEdad)"
echo -e "Direccion         : $direccion ($rsDireccion)"
echo -e "Numero de Telefono: $telefono ($rsTelefono)"

!/bin/bash

#reto 2
regnombre=鈥橿([A-Za-z]{2,50})$鈥
regapellido=鈥橿([A-Za-z]{2,50})$鈥
regedad=鈥橿([0-9]{1,3})$鈥
regdireccion=鈥橿([A-Za-z:espace:]{5:40})$鈥
regtelefono=鈥橿([0-9]{9,11})$鈥
regcorreo=鈥橿([A-Za-z0-9._%-]{2,30}+@[A-Za-z0-9]{2,20}+.[A-Za-z]{2,5})$'
read -p 鈥渋ngrese su nombre:鈥 nombre
if [[ $nombre =~ $regnombre ]]; then
echo "valido"
else
echo "No valido"
fi
read -p 鈥渋ngrese su apellido:鈥 apellido
if [[ $apellido =~ $regapellido ]]; then
echo "valido"
else
echo "No valido"
fi
read -p 鈥渆dad:鈥 edad
if [[ $edad =~ $regedad ]];then
echo "valido"
else
echo "No valido"
fi
read -p 鈥淒irecci贸n:鈥 direccion
if [[ $direccion =~ regdireccion ]];then
echo "valido"
else
echo "No valido"
fi
read -p 鈥淭elefono:鈥 telefono
if [[ $telefono =~ $regtelefono ]];then
echo "valido"
else
echo "No valido"
fi
read -p 鈥淐orreo:鈥 correo
if [[ $correo =~ $regcorreo ]];then
echo "valido"
else
echo "No valido"
fi
echo "Su nombre es: $nombre"
echo "Su apellido: $apellido"
echo "Su edad es: $edad"
echo "Su Direcci贸n es: $direccion"
echo "Su Telefono: $telefono"
echo 鈥淪u Correo es: $correo鈥

Buenas! Comparto mi resoluci贸n al reto, saludos!


# !/bin/bash

#Solicitar la informaci贸n de cada uno de ustedes como nombres, apellidos, edad, direcci贸n y n煤meros telef贸nicos; y posterior imprima toda la informaci贸n.


#Autor: Nicol谩s Rodr铆guez @chino.rodgz


answer=""

#expresiones regulares.
nameRegex='^[a-z]|[A-Z]|[谩-煤]|[脕-脷]$'
surnameRegex='^[a-z]|[A-Z]|[谩-煤]|[脕-脷]$'
ageRegex='^[0-9]{2}$'
adressRegex='^[0-9]|[a-z]|[A-Z]$'
telephoneRegex='^[0-9]{11}$'




echo "PROGRAMA DE REGISTROS"
echo "Si desea ingresar un nuevo registro presione 'y', de lo contrario presione 'n' "
read -p "y/n: " answer

if [[ $answer == "y" ]]
then
    clear
    read -p "Nombre: " name
    read -p "Apellidos: " surname
    read -p "Edad: " age
    read -p "Direcci贸n: " adress
    read -p "N煤mero telef贸nico: " telephoneNumber

    clear
    echo -e "\n"
    echo "--NUEVO REGISTRO--"
    echo "Nombre: $name"
    echo "Apellidos: $surname"
    echo "Edad: $age"
    echo "Direcci贸n: $adress"
    echo "N煤mero telef贸nico: $telephoneNumber"


    #Validaci贸n de la informaci贸n.

    echo -e "\n"
    echo "--VALIDACI脫N--"
    if [[ $name =~ $nameRegex ]];then
        echo "Nombre $name v谩lido"
    else
        echo "Nombre $name inv谩lido"
    fi

    if [[ $surname =~ $surnameRegex ]];then
        echo "Apellido $surname v谩lido"
    else
        echo "Apellido $surname inv谩lido"
    fi

    if [[ $age =~ $ageRegex ]];then
        echo "Edad $age v谩lida"
    else
        echo "Edad $age inv谩lida"
    fi

    if [[ $adress =~ $adressRegex ]];then
        echo "Direcci贸n $adress v谩lida"
    else
        echo "Direcci贸n $adress inv谩lida"
    fi

    if [[ $telephoneNumber =~ $telephoneRegex ]];then
        echo "N煤mero telef贸nico $telephoneNumber v谩lido"
    else
        echo "N煤mero telef贸nico $telephoneNumber inv谩lido"
    fi


elif [[ $answer == "n" ]]
then
    exit 0

else
    echo "Presione un valor v谩lido"

fi

Resultado de un registro v谩lido en la consola

  1 #! /bin/bash
  2 #Reto2 ejemplificar las entradas y salidas de un programa
  3 #Author:Levi
  4 
  5 userName=""
  6 userLastName=""
  7 userAge=""
  8 userAddress=""
  9 userPhoneNumber=""
 10 
 11 
 12 read -p "Enter you Name: " userName
 13 read -p "Enter Your Last Name: " userLastName
 14 read -p "Enter Your Age: " userAge
 15 read -p "Enter your home address: " userAddress
 16 read -p "Enter Your phone number: " userPhoneNumber
 17 
 18 echo -e "\n"
 19 
 20 echo "Your Name is: $userName $userLastName."
 21 echo "Age: $userAge years old."
 22 echo "Home address: $userAddress."
 23 echo "Phone number: $userPhoneNumber."

As铆 me qued贸:

#!/bin/bash
# Programa para solicitar informaci贸n al usuario y posteriormente imprimirla en pantalla. 
# By: Rafael Baculima - [email protected]

namesRegex='^[A-Za-z谩-眉脕-脺\ ]*$'
lnamesRegex='^[A-Za-z谩-眉脕-脺\ ]*$'
ageRegex='^[0-9]{1,2}$'
cityRegex='^[A-Za-z谩-煤脕-脷\ ]*$'
phoneRegex='^[0-9]{10}$'


echo "Ingrese la informaci贸n solicitada a continuaci贸n"
read -p "Nombres: " names
until [[ $names =~ $namesRegex ]]; do
    echo "El nombre no debe contener n煤meros. Ingrese nuevamente."
    read -p "Nombres: " names
done

read -p "Apellidos: " lnames
until [[ $lnames =~ $lnamesRegex ]]; do
    echo "Los apellidos no deben contener n煤meros. Ingrese nuevamente."
    read -p "Apellidos: " lnames 
done

read -p "Edad: " age
until [[ $age =~ $ageRegex ]]; do
    echo "Ingrese una edad v谩lida."
    read -p "Edad: " age 
done

read -p "Ciudad: " city
until [[ $city =~ $cityRegex ]]; do
    echo "Ingrese una ciudad v谩lida."
    read -p "Ciudad: " city
done

read -p "N煤mero de celular: " phone
until [[ $phone =~ $phoneRegex ]]; do
    echo "Su n煤mero de tel茅fono debe tener 10 d铆gitos. Ingrese nuevamente."
    read -p "N煤mero de celular: " phone
done

echo "-------------------------------------------"
echo "Sus datos son:"
echo "-------------------------------------------"
echo "Nombres:                   $names"
echo "Apellidos                  $lnames"
echo "Edad:                      $age a帽os"
echo "Ciudad:                    $city"
echo "N煤mero de celular:         $phone"
echo "-------------------------------------------"
echo -e "\n"

Dejo mi reto por aqui

# !/bin/bash

#Autor: Anibal Franco
#Version: 1.0
#Reto 02 - Crear un programa que solicite datos del usuario como nombre y apellido, edad, direccion y numero de telefono. Validar los datos de entrada

nombreRegex='^[A-z]{2,}\s?[A-z]{0,}$'
apellidoRegex='^[A-z]{2,}$'
edadRegex='^[0-9]{0,2}$'
direccionRegex='^[A-z]{2,}\s?[A-z]{2,}\s?[0-9]+$'
telefonoRegex='^[0-9]{0,10}$'

echo -e "Ingrese sus datos, por favor:\n"
read -p "Nombre/s: " nombre
read -p "Apellido/s: " apellido
read -p "Edad: " edad
read -p "Domicilio: " direccion
read -p "Telefono: " telefono

#Validamos los datos
if [[ $nombre =~ $nombreRegex ]]; then
    echo "Nombre $nombre valido"
else
    echo "Nombre $nombre invalido"
fi

if [[ $apellido =~ $apellidoRegex ]]; then
    echo "Apellido $apellido valido"
else
    echo "Apellido $apellido invalido"
fi

if [[ $edad =~ $edadRegex ]]; then
    echo "Edad $edad valido"
else
    echo "Edad $edad invalido"
fi

if [[ $direccion =~ $direccionRegex ]]; then
    echo "Direccion $direccion valido"
else
    echo "Direccion $direccion invalido"
fi

if [[ $telefono =~ $telefonoRegex ]]; then
    echo "Telefono $telefono valido"
else
    echo -e "Telefono $telefono invalido\n"
fi

echo "Los datos ingresados son:"
echo "Nombre: $nombre Apellido: $apellido Edad: $edad Domicilio: $direccion Telefono: $telefono"

Slds

No es mucho pero es trabajo honesto鈥



# ! /bin/bash/
# Programa para solicitar Nombre Apellidos Edad Direccion y Telefono.

echo "Formulario Random"
nombre=""
apellido=""
edad=""
direccion=""
telefono=""

read -p "Ingrese su nombre:" nombre
read -p "Ingrese su apellido:"
read -p "Ingrese su edad:" edad
read -p "Ingrese su Direccion:" direccion
read -p "Ingrese su telefono:" telefono

echo -e "\n"

echo "Tu informacion es:"
echo "Tu Nombre es: $nombre $apellido"
echo "Tu edad es $edad"
echo "Tu direccion es: $direccion"
echo "Tu telefono es: $telefono"

Reto 2

# !/bin/bash

# Programa que recolecta informaci贸n y la ijmprime en pantalla

name=""
lastname=""
age=0
address=""
cellPhoneNumber=""
phoneNumber=""

ageRegex='^[0-9][0-9]$'
phoneRegex='^[0-9]{10}$'

echo "Captura de datos de usuario"
read -p "Introducir nombre:" name
read -p "Introducir apellido:" lastname
read -p "Introducir edad:" age
read -p "Introducir direcci贸n:" address
read -p "Introducir n煤mero celular:" cellPhoneNumber
read -p "Introducir n煤mero telefonico de casa:" phoneNumber
echo -e "\n"
echo "La informaci贸n introducida es la siguiente:"
echo -e "\nNombre Completo: $name $lastname\n"
if [[ $age =~ $ageRegex ]]; then
    echo -e "Edad: $age\n"
else
    echo -e "Edad Inv谩lida\n"
fi
echo -e "Direcci贸n: $address\n"

if [[ $phoneNumber =~ $phoneRegex && $cellPhoneNumber =~ $phoneRegex ]]; then
    echo -e "Telefonos: Celular: $cellPhoneNumber, Casa: $phoneNumber\n"
else
    if [[ $phoneNumber =~ $phoneRegex ]]; then
        echo -e "Telefonos: Celular: Inv谩lido, Casa: $phoneNumber\n"
    else
        echo -e "Telefonos: Celular: $cellPhoneNumber, Casa: Inv谩lido\n"
    fi
fi

Intent茅 utilizar la mayoria de lo que aprendi para resolver el reto

# ! /bash/bin
# Autor: Jean Rodriguez
# Reto2: Solicitar la informaci贸n de cada uno de ustedes como nombres, apellidos, edad, direcci贸n y n煤meros telef贸nicos; y posterior imprima toda la informaci贸n.

nameV='^[A-Za-z]+[ A-Za-z]*$'
lastnameV='^[A-Za-z]+[ A-Za-z]*$'
ageV='^[0-9]{2}$'
addressV='^[A-Za-z]+[ 0-9a-z 0-9a-z 0-9]+$'
celphoneV='^[0-9]+$'


echo -n "Ingrese su Nombre:"
read
name=$REPLY
if [[ $name =~ $nameV ]]; then
    :
else
    echo "Nombre no v谩lido"
    exit
fi

read -p "Ingrese su Apellido:" lastname
if [[ $lastname =~ $lastnameV ]]; then
    :
else
    echo "Apellido no v谩lido"
    exit
fi

echo -n "Ingrese su Edad:"
read
age=$REPLY

if [[ $age =~ $ageV ]]; then
    :
else
    echo "Edad no v谩lida"
    exit
fi

read -p "Ingrese su Direcci贸n:" address
if [[ $address =~ $addressV ]]; then
    :
else
    echo "Direcci贸n no v谩lida"
    exit
fi

echo -n "Ingrese su n煤mero de Celular:"
read
cellphone=$REPLY

if [[ $cellphone =~ $cellphoneV ]]; then
    :
else
    echo "N煤mero de Celular no v谩lido"
    exit
fi

clear

echo -e "Datos Ingresados:\n Nombre: $name \n Apellido: $lastname \n Edad: $age a帽os \n Direcci贸n: $address \n Celular: $cellphone"

Lo hice de esta manera para hacerlo un poco m谩s entretenido

#!/bin/bash

nameRegrex='^[A-Z]{1}[a-z]*$'
ageRegrex='^[1-9]{1,2}$'
addressRegrex='^([A-Z]*)$'
phoneRegrex='^[0-9]{10}$'

read -p "Write your name: " name
read -p "Write your last name: " last
read -p "How old are you? " age
read -p "Where do you live? " address
read -p "Write you phone number: " phone

if [[ $name =~ $nameRegrex ]] && [[ $last =~ $nameRegrex ]]; then
	echo "Hi $name $last"
else
	echo "$name $last sounds weird... Hi..."
fi

echo -e "\n"

if [[ $age =~ $ageRegrex ]] && [[ $address =~ $addressRegrex ]]; then
	echo "How is livig at $address with $age years old?"
elif [[ $age =~ $ageRegrex ]]; then
	echo "My grandpa talk a lot about his life when he was $age..."
	echo -n "But I don't know where is $address"
elif [[ $address =~ $addressRegrex ]]; then
	echo "I went with my mother to $address once"
	echo -n "Maybe I was $age"
else
	echo "Wait, are you $age years old? I don't know where's $address"
fi

echo -e "\n"

if [[ $phone =~ $phoneRegrex ]]; then
	echo "We will call you to $phone"
else
	echo "$phone doesn't look like a phone number in this country"
fi

Encontr茅 un chequer que me pareci贸 interesante, es este

#!/bin/bash
#Programa para capturar informaci贸n del usuario

nombre=""
apellido=""
edad=""
direccion=""
celular=""

echo "========================================"
echo "=                                      ="
echo "=   Recopilaci贸n de datos de usuarios  ="
echo "========================================"
echo "              Bienvenido!!"
read -p "Ingresa tu nombre: " nombre
read -p "Ingresa tu apellido: " apellido
read -p "Escribe tu edad en m煤mero: " edad
read -p "Ingresa tu direcci贸n: " direccion
read -p "Ingresa tu n煤mero celular: " celular
echo "Gracias..."
echo "Procesando datos."
sleep 3
clear
date
echo "Agradecemos tu registro $nombre $apellido."
echo "te pondremos con tus compa帽eros de $edad a帽os."
echo "enviaremos tu carta de registro a: $direccion, por favor esta atento."
echo "en caso de que no te encuentres $nombre te llamaremos al $celular. Gracias por tu tiempo. " 

Mi resultado del reto

# ! /bin/bash
# Reto2 para solicitar la informacion del usuario
# Autor: Yobriel Castillo - @yleexcst

nombre=""
apellido=""
edad=0

echo "Introduzca sus datos: "
read -p "Nombre: " nombre
echo -e "\n"
read -p "Apellido: " apellido
echo -e "\n"
read -p "Edad: " edad
echo -e "\n"
read -p "Direcci贸n: " direc
echo -e "\n"
echo "Opci贸n enviadas: $*"
echo -e "\n"

echo "Recuperar valores $*"



<code> 
# !/bin/bash
# reto de solicitar datoss del usuario

echo "Porfavor ingrese los siguientes datos"
read -p "Nombre:" name
read -p "Apellido:" lastname
read -p "Edad:" year
read -p "Direcci贸n" address
read -p "Numeros telefonicos" telephone_numbers
echo "Los datos ingresados son:" $name - $lastname - $year - $address - $telephone_numbers

Comparto mi c贸digo 馃槂

# !/bin/bash
# Reto No 2: Solicitar la informaci贸n de cada uno de ustedes como nombres, apellidos, edad, direcci贸n y n煤meros telef贸nicos; y posterior imprima toda la informaci贸n.

nombreRegex='^[A-Z][a-z]{2,10}$'
edadRegex='^[0-9]{2}$'
celularRegex='^[0-9]{10}$'



read -p "驴Cual es tu nombre?: " nombre

while [[ ! $nombre =~ $nombreRegex ]]
do
    read -p "Ingresa un nombre valido: " nombre
done



read -p "驴Cual es tu edad? " edad

while [[ ! $edad =~ $edadRegex ]]
do
    read -p "Ingresa una edad valida: " edad
done



read -p "驴Cual es tu celular? " celular

while [[ ! $celular =~ $celularRegex ]]
do
    read -p "Ingresa un celular valido: " celular
done


echo "Nombre: $nombre"
echo "Edad: $edad"
echo "Celular: $celular"

Antes de Mostrar el Codigo Spaguetti anexo las siguientes expresiones regulares que les seran de utilidad:

  • nomsRegex="^( ?[A-Z][a-z])$" (Los Nombres/Apellidos van en PascalCase separados C/U por expacio)

  • edadRegex="^[1-9][[:digit:]]{0,2}$" (La edad va de 1 hasta 999)

  • telsRegex="^( ?[[:digit:]]{10})*$" (Los telefonos al menos en Mexico son de 10 digitos C/U separados por espacio)

  • dirRegex="^.+$" (La direccion se le puede poner n caracteres cualesquiera)

El codigo es el siguiente:

! /bin/bash

Reto2 Formulario

echo -e 鈥淚nserte los siguientes Datos\n鈥

nomsRegex="^( ?[A-Z][a-z])$鈥
edadRegex=鈥漗[1-9][[:digit:]]{0,2}$鈥
telsRegex=鈥漗( ?[[:digit:]]{10})*$鈥
dirRegex=鈥漗.+$鈥
validos=鈥"

read -p "Nombre(s): " noms
read -p "Apellido(s): " apes
read -p "Edad: " edad
read -p "Telefono(s): " tels
read -p "Direccion: " direc

if [[ $noms =~ $nomsRegex ]]; then
validos="Nombre(s)"
fi

if [[ $apes =~ $nomsRegex ]]; then
validos="$validos Apellido(s)"
fi

if [[ $edad =~ $edadRegex ]]; then
validos="$validos Edad"
fi

if [[ $tels =~ $telsRegex ]]; then
validos="$validos Telefono(s)"
fi

if [[ $direc =~ $dirRegex ]]; then
validos="$validos Direccion"
fi

echo -e 鈥淺nDatos Validos: $validos鈥

echo -e 鈥淺nDatos Capturados:\nNombre(s): $noms\nApellido(s): $apes\nEdad: $edad\nTelefono(s): $tels\nDireccion: $direc鈥

# ! /bin/bash
# Programa para ejemplificar las entradas y salidas de un programa 
# Autor: Jes煤s M茅ndez - @devjesus_

userName=""
userLastName=""
userAge=0
userDirection=""
userPhoneNumber=0

read -p "Ingrese su nombre: " userName
read -p "Ingrese sus apellidos: " userLastName
read -p "Ingrese su edad: " userAge
read -p "Ingrese su direcci贸n: " userDirection
read -p "Ingrese su n煤mero telef贸nico: " userPhoneNumber

echo -e "\n"

echo "Su nombre es: $userName $userLastName"
echo "Tiene $userAge a帽os"
echo "Vive en: $userDirection"
echo "Y su n煤mero es: $userPhoneNumber"!

...
# !/bin/bash
# Solicitar la informaci贸n de cada uno de ustedes como nombres, apellidos, edad, direcci贸n y n煤meros telef贸nicos; y posterior imprima toda la informaci贸n.
#Author: Nelson Sanchez

#asking Data
echo -e "Enter your data:\n"
read -p "Type your name:" name
read -p "Type your last name:" lastname
read -p "Type your age:" age
read -p "Type your address:" address
read -p "Type your cellphone number:" phoneNumber

#printing Data
echo -e "\n YOUR DATA\n==========================="
echo "Your Name: $name"
echo "Your Last Name: $lastname"
echo "Your age: $age"
echo "Your address: $address"
echo "Your phone Number: $phoneNumber"
#!/bin/bash

#Solicitar la informaci贸n de cada uno: nombres, apellidos, edad, direccion y numero telef贸nico y despu茅s imprimir toda la informaci贸n.
#Creado por: Jorge Armando G贸ngora Rojas - 18-01-2020

nombre=""
apellidoPaterno=""
apellidoMaterno=""
edad=""
direccion=""
numeroTelefono=""

#Solicitar datos
echo "Ingreso de datos"
read -p "Nombre(s): " nombre
read -p "Apellido Paterno: " apellidoPaterno
read -p "Apellido Materno: " apellidoMaterno
read -p "Edad: " edad
read -p "Direcci贸n: " direccion
read -n10 -p "N煤mero tel茅fonico: " numeroTelefono
echo -e "\n"

#Imprimir datos
echo "Informaci贸n"
echo "Nombre(s): $nombre"
echo "Apellidos: $apellidoPaterno $apellidoMaterno"
echo "Edad: $edad"
echo "Direcci贸n: $direccion"
echo "N煤mero telefonico: $numeroTelefono"

Aqui esta mi codigo del reto. He validado correo electronico valido y numero telefonico que solo deberia aceptar este formato (123)456.7890

<h1>! /bin/bash</h1> <h1>Programa para ejemplificar como capturar la informacion del usuario: Nombre, Apellido, CI, edad, direccion, numeros telefonicos e email</h1> <h1>validar que direccion ocupe solo 20 digitos, email sea valido y Cedula de 8 digitos.</h1>

#Arnoldo Alvarez

cedulaRegex=鈥橿[0-9]{08}$鈥
emailRegex=鈥橿.[@].[com|es]$鈥
password=1234
telRegex=鈥橿(?([0-9]{3}))?([0-9]{3})[.]?([0-9]{4})$鈥 #Solo acepta el formato telefonico (xxx)xxx.xxxx Ej:(706)612.4602
echo 鈥淚ngreso de Datos Basicos鈥

read -p "Ingresar Nombre: " nombre
echo -e "\n"
read -p "Ingresar Apellido: " apellido
echo -e "\n"
read -n8 -p "Ingrese Cedula de identidad " ci
echo -e "\n"
read -n2 -p "Ingrese su Edad " edad
echo -e "\n"
read -n20 -p "Ingrese su direccion " direccion
echo -e "\n"
read -p "Ingrese su numero telefonico (XXX)XXX.XXXX " telefono
echo -e "\n"
read -p "Ingrese su correo electronico " email

read -s -p 鈥淚ngrese la clave para procesar datos:鈥 clave
echo -e 鈥淺n鈥

if [[ $clave =~ $password ]]; then
echo "La clave es correcta $clave"
echo "Todos los datos han sido ingresados"
echo "Verificando鈥"
echo "Nombre: $nombre "
echo 鈥淎pellido:$apellido鈥

if [[ $ci =~ $cedulaRegex ]]; then
echo "Cedula valida: $ci "
else
echo "Cedula invalida: $ci"
fi

echo "Edad: $edad"
echo "Direccion de residencia: $direccion"
echo 鈥淣umero telefonico: $telefono鈥

if [[ $telefono =~ $telRegex ]]; then
echo "Telefono valido $telefono"
else
echo "Incorrecto $telefono"
fi

if [[ $email =~ $emailRegex ]]; then
echo "Correo electronico valido $email "
else
echo "Correo electronico invalido $email "
fi

else
echo "Clave incorrecta"
echo 鈥淪aliendo del Sistema鈥

fi

# !/bin/bash
# Reto 2: Pedir datos de una persona y luego imprimirlas
# Autor: Luber Cueva

name=""
last_name=""
age=0
address=""
phone_number=0

echo "Complete los siguientes datos:"
read -p "Nombre: " name
read -p "Apellidos: " last_name
read -p "Edad: " age
read -p "Direccion: " address
read -p "Numero de telefono: " phone_number

echo ""
echo "Estos son sus datos:"

echo  "Nombre: " $name
echo  "Apellidos: " $last_name
echo  "Edad: " $age
echo  "Direccion: " $address
echo  "Numero de telefono: " $phone_number
# !/bin/bash
# Programa para validar la informaci贸n del usuario
# Autor: Karen Ramirez

nombreRegex="^[A-Z]{1}[a-z]*$"
apellidoRegex="^[A-Z]{1}[a-z]*$"
numeroTelefonicoRegex="^[0-9]{10}$"
identificacionRegex='^[0-9]{10}$'
fechaNacimientoRegex='^19|20[0-9]{2}[1-12][1-31]'

echo "Reto"

read -p "Ingresar nombre:" nombre
if [[ $nombre =~ $nombreRegex  ]]; then
    echo "Nombre $nombre valido"
else
    echo "Nombre $nombre invalido"
    exit 1
fi


read -p "Ingresar apellido:" apellido
if [[ $apellido =~ $apellidoRegex  ]]; then
    echo "Apellido  $apellido valido"
else
    echo "Apellido $apellido invalido"
    exit 1
fi

read -p "Ingresar edad:" edad
if [[ $edad > 0  ]]; then
    echo "Edad $edad valida"
else
    echo "Edad $edad invalida"
    exit 1
fi

read -n8 -p "Ingresar la fecha de nacimiento [yyyyMMDD]:" fechaNacimiento
if [[ $fechaNacimiento =~ $fechaNacimientoRegex  ]]; then
    echo "\n  Fecha de nacimiento $fechaNacimiento valida"
else
    echo "\n Fecha de nacimiento $fechaNacimiento  invalida"
    exit 1
fi


read -n10 -p "Ingresar numero de telefono :" numeroTelefonico
if [[ $numeroTelefonico =~ $numeroTelefonicoRegex  ]]; then
    echo "Numero telefonico:  $numeroTelefonico valido"
else
    echo "Numero telefonico:  $fechaNacimiento  invalido"
    exit 1
fi

echo "Los datos ingresesados son: Nombre:$nombre, Apellido:$apellido, Edad:$edad, Fecha de nacimiento:$fechaNacimiento, Numero de telefono:$numeroTelefonico"

#!/bin/bash
#solicitar informacion de cada uno como nombre, apellido, edad, direccion

nombre="鈥
apellido=鈥濃
edad=鈥濃
direccion=鈥濃
numtelefono=鈥"

echo -n "Tu nombre es:"
read
nombre=$REPLY

echo -n "Apellido:"
read
apellido=$REPLY

echo -n "edad:"
read
edad=$REPLY

echo -n "direccion:"
read
direccion=$REPLY

echo -n 鈥渘umero de telefono:鈥

<h1>!/bin/bash</h1>

nombre="鈥
apellido=鈥濃
edad=鈥濃
direccion=鈥濃
telefono=鈥"

read -p 鈥淣ombre:鈥 nombre
read -p 鈥淎pellido:鈥 apellido
read -p 鈥淓dad:鈥 edad
read -p 鈥淒ireccion:鈥 direccion
read -p 鈥淭elefono:鈥 telefono

echo 鈥渟us datos son:鈥 $nombre, $apellido, $edad, $direccion, $telefono

  1 #! /bin/bash
  2
  3 name=""
  4 lastName=""
  5 yearsOld=""
  6 addres=""
  7 phoneNumbers=""
  8
  9 echo -e "Reto 2"
 10 read -p "cual es tu nombre?  " name
 11 read -p "y tu apellido?  " lastName
 12 echo -e "yo creo que te conosco"
 13 read -p "dime, cual es tu direccion  " addres
 14 read -p "aja, y tu edad?  " yearsOld
 15 read -p "solo me falta tu numero telefonico, cual es?  " phoneNumbers
 16 echo -e "\ndefinitivamente yo eh hablado antes contigo!!!\n"
 17 echo "mira te tengo almacenado en mi memoria"
 18 echo -e "nombre: $name\napellido: $lastName\nedad: $yearsOld\ndireccion: $ad    dres\nnumero telefonico: $phoneNumbers"
~