diff --git a/scripts/menus/9_upgrade.sh b/scripts/menus/9_upgrade.sh index ccc8de72..4ce09ffe 100644 --- a/scripts/menus/9_upgrade.sh +++ b/scripts/menus/9_upgrade.sh @@ -673,12 +673,15 @@ checkcustgeo() { "" | 0) break ;; - [1-99]) - if [ "$num" -le "$(wc -l <"$TMPDIR"/geo.list)" ]; then + *[!0-9]*) + errornum + ;; + *) + if [ "$num" -le "$(wc -l < "$TMPDIR/geo.list")" ]; then geotype=$(sed -n "$num"p "$TMPDIR"/geo.list) - [ -n "$(echo "$geotype" | grep -oiE 'GeoSite.*dat')" ] && geoname=GeoSite.dat - [ -n "$(echo "$geotype" | grep -oiE 'Country.*mmdb')" ] && geoname=Country.mmdb - [ -n "$(echo "$geotype" | grep -oiE '.*(.srs|.mrs)')" ] && geoname=$geotype + echo "$geotype" | grep -qiE 'GeoSite\.dat' && geoname=GeoSite.dat + echo "$geotype" | grep -qiE 'Country\.mmdb' && geoname=Country.mmdb + echo "$geotype" | grep -qiE '\.(srs|mrs)$' && geoname="$geotype" custgeolink=https://github.com/${project}/releases/download/${release_tag}/${geotype} getcustgeo else @@ -686,9 +689,6 @@ checkcustgeo() { break fi ;; - *) - errornum - ;; esac else msg_alert "\033[31m$UPG_CORE_CHECK_FAIL_HINT\033[0m"