hysteria_docker/bin/print_share_link.sh

42 lines
1.2 KiB
Bash

#!/bin/bash
# 获取脚本bin目录路径
script_dir=$(cd "$(dirname "$0")"; pwd)
# 读取配置文件内容
config=$(cat "${script_dir}/../config.json")
source "${script_dir}/utils/base.sh"
# 检查jq是否安装
check_jq
# 检查是否已启动过容器
password=$(jq -r '.auth.password' $config_dir/config.json)
if [ "$password" = "你的密码" ]; then
red "error: 容器未启动过, 查看配置失败"
echo '请选择"启动容器"'
exit 1
fi
# 提取所需信息
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"