mirror of
https://github.com/juewuy/ShellCrash.git
synced 2026-03-12 08:21:40 +00:00
perf: optimize port validation with efficient grep usage
- Use 'grep -q' to avoid unnecessary output and sub-shell usage
This commit is contained in:
@@ -1,17 +1,17 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
# Copyright (C) Juewuy
|
# Copyright (C) Juewuy
|
||||||
|
|
||||||
check_port(){
|
check_port() {
|
||||||
if [ "$1" -gt 65535 -o "$1" -le 1 ]; then
|
if [ "$1" -gt 65535 ] || [ "$1" -le 1 ]; then
|
||||||
echo -e "\033[31m输入错误!请输入正确的数值(1-65535)!\033[0m"
|
echo -e "\033[31m输入错误!请输入正确的数值(1-65535)!\033[0m"
|
||||||
return 1
|
return 1
|
||||||
elif [ -n "$(echo "|$mix_port|$redir_port|$dns_port|$db_port|" | grep "|$1|")" ]; then
|
elif echo "|$mix_port|$redir_port|$dns_port|$db_port|" | grep -q "|$1|"; then
|
||||||
echo -e "\033[31m输入错误!请不要输入重复的端口!\033[0m"
|
echo -e "\033[31m输入错误!请不要输入重复的端口!\033[0m"
|
||||||
return 1
|
return 1
|
||||||
elif [ -n "$(netstat -ntul | grep -E ":$1[[:space:]]")" ]; then
|
elif netstat -ntul | grep -q ":$1[[:space:]]"; then
|
||||||
echo -e "\033[31m当前端口已被其他进程占用,请重新输入!\033[0m"
|
echo -e "\033[31m当前端口已被其他进程占用,请重新输入!\033[0m"
|
||||||
return 1
|
return 1
|
||||||
else
|
else
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user