重构代码为单个函数
This commit is contained in:
parent
9bbaacfb98
commit
5ac3ce9ae9
16
bin/init.sh
16
bin/init.sh
@ -1,9 +1,13 @@
|
||||
#!/bin/bash
|
||||
|
||||
script_dir=$(cd "$(dirname "$0")"; pwd) # 脚本绝对路径
|
||||
init() {
|
||||
local script_dir=$(cd "$(dirname "$0")"; pwd)
|
||||
|
||||
# 更新密码
|
||||
bash "$script_dir/update_password.sh"
|
||||
|
||||
# 生成自签名证书和设置域名
|
||||
bash "$script_dir/set_domain.sh" "bing.com"
|
||||
}
|
||||
|
||||
# 更新密码
|
||||
bash "$script_dir/update_password.sh"
|
||||
|
||||
# 生成自签名证书和设置域名
|
||||
bash "$script_dir/set_domain.sh" "bing.com"
|
||||
init
|
||||
@ -1,38 +1,43 @@
|
||||
#!/bin/bash
|
||||
|
||||
script_dir=$(cd "$(dirname "$0")"; pwd) # 脚本所在目录
|
||||
config_dir=$(readlink -f "$script_dir/../") # 配置文件所在目录
|
||||
source "${script_dir}/utils/base.sh"
|
||||
print_share_link() {
|
||||
local script_dir=$(cd "$(dirname "$0")"; pwd)
|
||||
local config_dir=$(readlink -f "$script_dir/../")
|
||||
source "${script_dir}/utils/base.sh"
|
||||
|
||||
# 检查jq是否安装
|
||||
check_jq
|
||||
|
||||
# 检查是否已启动过容器
|
||||
local password=$(jq -r '.auth.password' "$config_dir/config.json")
|
||||
if [ "$password" = "你的密码" ]; then
|
||||
red "error: 容器未启动过, 查看配置失败"
|
||||
echo '请选择"启动容器"'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 读取配置文件内容
|
||||
local config=$(cat "$config_dir/config.json")
|
||||
|
||||
# 提取所需信息
|
||||
password=$(echo "$config" | jq -r '.auth.password')
|
||||
local sni=$(echo "$config" | jq -r '.masquerade.proxy.url' | awk -F'/' '{print $3}')
|
||||
local ipv4=$(curl -4 -sSL --connect-timeout 3 --retry 2 ip.sb || echo "null")
|
||||
local port=$(echo "$config" | jq -r '.listen' | cut -d':' -f2)
|
||||
local obfs_password=$(echo "$config" | jq -r '.obfs.salamander.password')
|
||||
|
||||
# 构建分享链接
|
||||
local share_link="hysteria2://${password}@${ipv4}:${port}/?sni=${sni}&insecure=1#${ipv4}&obfs-password=${obfs_password}"
|
||||
|
||||
# 输出分享链接
|
||||
echo -e "\033[32m"
|
||||
echo "IPV4: $ipv4"
|
||||
echo "port: $port"
|
||||
echo "password: $password"
|
||||
echo "sni: $sni"
|
||||
echo "混淆密码: $obfs_password"
|
||||
echo "分享链接: $share_link"
|
||||
echo -e "\033[0m"
|
||||
}
|
||||
|
||||
# 检查jq是否安装
|
||||
check_jq
|
||||
|
||||
# 检查是否已启动过容器
|
||||
password=$(jq -r '.auth.password' $config_dir/config.json)
|
||||
if [ "$password" = "你的密码" ]; then
|
||||
red "error: 容器未启动过, 查看配置失败"
|
||||
echo '请选择"启动容器"'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 读取配置文件内容
|
||||
config=$(cat "${script_dir}/../config.json")
|
||||
# 提取所需信息
|
||||
password=$(echo "$config" | jq -r '.auth.password')
|
||||
sni=$(echo "$config" | jq -r '.masquerade.proxy.url' | awk -F'/' '{print $3}')
|
||||
ipv4=$(curl -4 -sSL --connect-timeout 3 --retry 2 ip.sb || echo "null") # 本机IPV4地址
|
||||
port=$(echo "$config" | jq -r '.listen' | cut -d':' -f2) # 端口号
|
||||
obfs_password=$(echo "$config" | jq -r '.obfs.salamander.password') # 混淆密码
|
||||
|
||||
# 构建分享链接
|
||||
share_link="hysteria2://${password}@${ipv4}:${port}/?sni=${sni}&insecure=1#${ipv4}&obfs-password=${obfs_password}"
|
||||
|
||||
# 输出分享链接
|
||||
echo -e "\033[32m"
|
||||
echo "IPV4: $ipv4"
|
||||
echo "port: $port"
|
||||
echo "password: $password"
|
||||
echo "sni: $sni"
|
||||
echo "混淆密码: $obfs_password"
|
||||
echo "分享链接: $share_link"
|
||||
echo -e "\033[0m"
|
||||
print_share_link # 输出分享链接
|
||||
@ -1,13 +1,18 @@
|
||||
#!/bin/bash
|
||||
|
||||
script_dir=$(cd "$(dirname "$0")"; pwd) # 脚本文件绝对路径
|
||||
config_dir=$(readlink -f "$script_dir/../") # 配置文件绝对路径
|
||||
source $script_dir/utils/jq_util.sh
|
||||
# 修改端口的函数
|
||||
change_port() {
|
||||
local script_dir=$(cd "$(dirname "$0")"; pwd)
|
||||
local config_dir=$(readlink -f "$script_dir/../")
|
||||
source "$script_dir/utils/jq_util.sh"
|
||||
|
||||
local old_port=$(jq -r '.listen' "$config_dir/config.json" | awk -F : '{print $2}')
|
||||
local port
|
||||
read -p "请输入新的端口[当前端口: $old_port]: " port
|
||||
|
||||
modify_json_file "$config_dir/config.json" ".listen" ":$port"
|
||||
|
||||
echo "端口修改成功!新端口为: $port"
|
||||
}
|
||||
|
||||
old_port=$(jq -r '.listen' "$config_dir/config.json" | awk -F : '{print $2}')
|
||||
read -p "请输入新的端口[当前端口: $old_port]: " port
|
||||
|
||||
# 修改端口
|
||||
modify_json_file "$config_dir/config.json" ".listen" ":$port"
|
||||
|
||||
echo "端口修改成功!新端口为: $port"
|
||||
change_port
|
||||
Loading…
Reference in New Issue
Block a user