usage() { echo "x509 " echo "x509 -r " return 0 } [ $# -eq 0 ] && return 0 help=0 remote=0 while getopts ":hr:" arg; do case $arg in r) remote=1 host=$OPTARG ;; h|*) help=1 ;; esac done [ $help -eq 1 ] && usage [ $remote -eq 0 ] && openssl x509 -in $* -noout -text [ $remote -eq 1 ] && openssl s_client -connect $host < /dev/null | openssl x509 -noout -text