Skip to content

Instantly share code, notes, and snippets.

@adriancmiranda
Forked from guessi/email_validator_regex.sh
Created August 29, 2024 19:05
Show Gist options
  • Save adriancmiranda/aaffce74830a2217a49f42274323554a to your computer and use it in GitHub Desktop.
Save adriancmiranda/aaffce74830a2217a49f42274323554a to your computer and use it in GitHub Desktop.
Simple Email Validator in Bash
#!/bin/bash
validator() {
printf "* %-48s" "$1"
echo "$1" | egrep --quiet "^([A-Za-z]+[A-Za-z0-9]*((\.|\-|\_)?[A-Za-z]+[A-Za-z0-9]*){1,})@(([A-Za-z]+[A-Za-z0-9]*)+((\.|\-|\_)?([A-Za-z]+[A-Za-z0-9]*)+){1,})+\.([A-Za-z]{2,})+"
[ $? -eq 0 ] && printf "\e[1;32m[pass]\e[m" || printf "\e[1;31m[fail]\e[m"
echo
}
echo
echo "a simple email validator in shell"
echo
echo "online validator: http://emailregex.com/"
echo "RFC: http://emailregex.com/email-validation-summary/"
echo
echo
echo "### expected result: valid"
echo
validator "[email protected]"
validator "[email protected]"
validator "[email protected]"
validator "[email protected]"
validator "[email protected]"
validator "[email protected]"
validator "[email protected]"
validator "[email protected]"
validator "[email protected]"
validator "[email protected]"
validator "[email protected]"
validator "[email protected]"
validator "[email protected]"
validator "valid@e-x_ample.com"
validator "[email protected]"
validator "[email protected]"
echo
echo "### expected result: invalid"
echo
validator "[email protected]"
validator "[email protected]"
validator "[email protected]"
validator "inv [email protected]"
validator "invalid@exa mple.com"
validator "[email protected]"
validator "[email protected]"
validator "[email protected]"
validator "[email protected]"
validator "[email protected]"
validator "[email protected]"
validator "[email protected]"
validator "[email protected]"
validator "[email protected]"
validator "[email protected]"
validator "[email protected]"
validator "[email protected]"
validator "[email protected]"
validator "[email protected]"
validator "[email protected]"
validator "[email protected]"
validator "invalid@example._com"
validator "invalid@e-x._ample.com"
validator "[email protected]_ample.com"
validator "[email protected]_ample.com"
validator "[email protected]"
validator "invalid@example._"
validator "[email protected]"
validator "[email protected]"
validator "[email protected]"
validator "[email protected]"
echo
echo "### END"
echo
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment