From cace23b822a2270ddf2f5c9614c85e86b3cf7012 Mon Sep 17 00:00:00 2001 From: sunshineplan Date: Thu, 12 Apr 2018 13:23:39 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B0=86=E6=89=80=E6=9C=89exit=E6=94=B9?= =?UTF-8?q?=E4=B8=BAreturn=EF=BC=8C=E5=B9=B6=E5=9C=A8=E9=80=82=E5=BD=93?= =?UTF-8?q?=E7=9A=84=E5=9C=B0=E6=96=B9=E5=A2=9E=E5=8A=A0return?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 目的是增加脚本可读性 --- release/install-release.sh | 46 ++++++++++++++++++-------------------- 1 file changed, 22 insertions(+), 24 deletions(-) diff --git a/release/install-release.sh b/release/install-release.sh index d67ed56b3..b97bd5db2 100755 --- a/release/install-release.sh +++ b/release/install-release.sh @@ -97,7 +97,7 @@ downloadV2Ray(){ curl ${PROXY} -L -H "Cache-Control: no-cache" -o ${ZIPFILE} ${DOWNLOAD_LINK} if [ $? != 0 ];then colorEcho ${RED} "Failed to download! Please check your network or try again." - exit 1 + return 3 fi return 0 } @@ -111,7 +111,7 @@ installSoftware(){ getPMT if [[ $? -eq 1 ]]; then colorEcho $YELLOW "The system package manager tool isn't APT or YUM, please install ${COMPONENT} manually." - exit + return 2 fi colorEcho $GREEN "Installing $COMPONENT" if [[ $SOFTWARE_UPDATED -eq 0 ]]; then @@ -124,7 +124,7 @@ installSoftware(){ $CMD_INSTALL $COMPONENT if [[ $? -ne 0 ]]; then colorEcho ${RED} "Install ${COMPONENT} fail, please install it manually." - exit + return 2 fi return 0 } @@ -150,7 +150,7 @@ extract(){ unzip $1 -d "/tmp/v2ray/" if [[ $? -ne 0 ]]; then colorEcho ${RED} "Extracting V2Ray failed!" - exit + return 2 fi return 0 } @@ -264,7 +264,7 @@ installInitScript(){ fi return elif [[ -n "${SERVICE_CMD}" ]] && [[ ! -f "/etc/init.d/v2ray" ]]; then - installSoftware "daemon" + installSoftware "daemon" || return $? cp "/tmp/v2ray/v2ray-${NEW_VER}-linux-${VDIS}/systemv/v2ray" "/etc/init.d/v2ray" chmod +x "/etc/init.d/v2ray" update-rc.d v2ray defaults @@ -281,7 +281,6 @@ Help(){ echo " -l, --local Install from a local file" echo " --remove Remove installed V2Ray" echo " -c, --check Check for update" - exit } remove(){ @@ -295,11 +294,11 @@ remove(){ rm -rf "/usr/bin/v2ray" "/etc/systemd/system/v2ray.service" if [[ $? -ne 0 ]]; then colorEcho ${RED} "Failed to remove V2Ray." - exit + return 0 else colorEcho ${GREEN} "Removed V2Ray successfully." colorEcho ${GREEN} "If necessary, please remove configuration file and log file manually." - exit + return fi elif [[ -n "${SYSTEMCTL_CMD}" ]] && [[ -f "/lib/systemd/system/v2ray.service" ]];then if pgrep "v2ray" > /dev/null ; then @@ -309,11 +308,11 @@ remove(){ rm -rf "/usr/bin/v2ray" "/lib/systemd/system/v2ray.service" if [[ $? -ne 0 ]]; then colorEcho ${RED} "Failed to remove V2Ray." - exit + return 0 else colorEcho ${GREEN} "Removed V2Ray successfully." colorEcho ${GREEN} "If necessary, please remove configuration file and log file manually." - exit + return fi elif [[ -n "${SERVICE_CMD}" ]] && [[ -f "/etc/init.d/v2ray" ]]; then if pgrep "v2ray" > /dev/null ; then @@ -322,15 +321,15 @@ remove(){ rm -rf "/usr/bin/v2ray" "/etc/init.d/v2ray" if [[ $? -ne 0 ]]; then colorEcho ${RED} "Failed to remove V2Ray." - exit + return 0 else colorEcho ${GREEN} "Removed V2Ray successfully." colorEcho ${GREEN} "If necessary, please remove configuration file and log file manually." - exit + return fi else colorEcho ${GREEN} "V2Ray not found." - exit + return 0 fi } @@ -348,31 +347,31 @@ checkUpdate(){ main(){ #helping information - [[ "$HELP" == "1" ]] && Help [[ "$CHECK" == "1" ]] && checkUpdate - [[ "$REMOVE" == "1" ]] && remove + [[ "$HELP" == "1" ]] && Help && return + [[ "$REMOVE" == "1" ]] && remove && return sysArch # extract local file if [[ $LOCAL_INSTALL -eq 1 ]]; then echo "Install V2Ray via local file" - installSoftware unzip + installSoftware unzip || return $? rm -rf /tmp/v2ray - extract $LOCAL + extract $LOCAL || return $? FILEVDIS=`ls /tmp/v2ray |grep v2ray-v |cut -d "-" -f4` SYSTEM=`ls /tmp/v2ray |grep v2ray-v |cut -d "-" -f3` if [[ ${SYSTEM} != "linux" ]]; then colorEcho $RED "The local V2Ray can not be installed in linux." - exit + return 1 elif [[ ${FILEVDIS} != ${VDIS} ]]; then colorEcho $RED "The local V2Ray can not be installed in ${ARCH} system." - exit + return 1 else NEW_VER=`ls /tmp/v2ray |grep v2ray-v |cut -d "-" -f2` fi else # download via network and extract - installSoftware "curl" + installSoftware "curl" || return $? getVersion if [[ $? == 0 ]] && [[ "$FORCE" != "1" ]]; then colorEcho ${GREEN} "Latest version ${NEW_VER} is already installed." @@ -388,12 +387,11 @@ main(){ V2RAY_RUNNING=1 stopV2ray fi - installV2Ray - installInitScript + installV2Ray || return $? + installInitScript || return $? if [[ ${V2RAY_RUNNING} -eq 1 ]];then colorEcho ${BLUE} "Restarting V2Ray service." - startV2ray - + startV2ray || return $? fi colorEcho ${GREEN} "V2Ray ${NEW_VER} is installed." rm -rf /tmp/v2ray