From 2e7d928791194fdf71460ac7f6f9044965feacf8 Mon Sep 17 00:00:00 2001 From: primardj Date: Sun, 4 Feb 2024 11:38:30 +0000 Subject: [PATCH] improve remote_connection.sh, now it's possible to put the protocol no matter where in the title. --- remote_connection.sh | 75 ++++++++++++++++++++++---------------------- 1 file changed, 38 insertions(+), 37 deletions(-) diff --git a/remote_connection.sh b/remote_connection.sh index 2ffe7a5..f279a45 100755 --- a/remote_connection.sh +++ b/remote_connection.sh @@ -18,10 +18,10 @@ default_ssh_port="22" default_rsp_port="3389" default_vnc_port="5900" -Version="2.0.0" +Version="2.0.1" -Help_message=" -$(basename $0) PROTOCOL [OPTION] [OPTION=VALUE] +Usage=" +$(basename $0) [OPTION] [OPTION=VALUE] PROTOCOL script which permit to launch a remote connection protocol. @@ -56,26 +56,14 @@ start_rsp() { port="${default_rsp_port}" fi hostname="${hostname}:${port}" - echo "start rsp" + echo "start rsp with user=${user} port=${port} hostname=${hostname}" xfreerdp /v:"${hostname}" /u:"${user}" /dynamic-resolution } -case "$1" in - "ssh") - protocol="ssh" - ;; - "rsp") - protocol="rsp" - ;; - *) - echo "protocol $1 uknown" >&2 - exit 1 -esac - # looking for double parametters. -for (( arg=2; arg<$#; arg++)); do +for (( arg=1; arg<$#; arg++)); do value="$((arg+1))" if [ "${!arg}" == "-u" ] then @@ -93,24 +81,36 @@ done # looking for all parametter alone for i in "$@"; do - if [ "${i%=*}" == "--user" ] - then - user="${i#*=}" - elif [ "${i%=*}" == "--port" ] - then - port="${i#*=}" - elif [ "${i#*=}" == "--hostname" ] - then - hostname="${i#*=}" - elif [ "${i}" == "--version" ] || [ "${i}" == "-v" ] - then - echo "$(basename $0) v.${Version}" - exit 0 - elif [ "${i}" == "--help" ] || [ "${i}" == "-h" ] - then - echo "$Help_message" - exit 0 - fi + case "$i" in + "ssh") + protocol="ssh" + ;; + "rsp") + protocol="rsp" + ;; + "--version" | "-v") + echo "$(basename $0) v.${Version}" + exit 0 + ;; + "--help" | "-h") + echo "${Usage}" + exit 0 + ;; + esac +done + +for i in "$@"; do + case "${i%=*}" in + "--user") + user="${i#*=}" + ;; + "--port") + port="${i#*=}" + ;; + "--hostname") + hostname="${i#*=}" + ;; + esac done if [ "${user}" == "" ] @@ -132,8 +132,9 @@ case "${protocol}" in start_rsp ;; *) - echo "CRITICAL protocol ${protocol} uknown" >&2 - exit 1 + echo "protocol ${protocol} uknown" >&2 + echo ${Usage} + exit ;; esac