代码拉取完成,页面将自动刷新
#!/usr/bin/env bash
urlencode() {
# Usage: urlencode "string"
local LC_ALL=C
for (( i = 0; i < ${#1}; i++ )); do
: "${1:i:1}"
case "$_" in
[a-zA-Z0-9.~_-])
printf '%s' "$_"
;;
*)
printf '%%%02X' "'$_"
;;
esac
done
printf '\n'
}
urldecode() {
# Usage: urldecode "string"
: "${1//+/ }"
printf '%b\n' "${_//%/\\x}"
}
APP_PATH="$( cd "$( dirname "${BASH_SOURCE[0]}" )"/ >/dev/null && pwd )"
SUBSCRIBE_URL="https://example.com/subscribe?target=clash"
if [ ! -f ${APP_PATH}/data/clash/config/config.yaml ]; then
if [ -f ${APP_PATH}/data/clash/config/config.template.yml ]; then
cp -af ${APP_PATH}/data/clash/config/config.template.yml ${APP_PATH}/data/clash/config/config.yaml
fi
fi
if [ ! -f ${APP_PATH}/.env ]; then
if [ -f ${APP_PATH}/.env.example ]; then
cp -af ${APP_PATH}/.env.example ${APP_PATH}/.env
fi
fi
if [ ! -z "$1" ]; then
SUBSCRIBE_URL="$1"
else
source ${APP_PATH}/.env
fi
SUBSCRIBE_URL_ENCODED=$(urlencode "${SUBSCRIBE_URL}")
echo ${SUBSCRIBE_URL}
sed -i -e "s|\&url=\(.*\)|\&url=${SUBSCRIBE_URL_ENCODED}\"|" ${APP_PATH}/data/clash/config/config.yaml
sed -i -e "s|SUBSCRIBE_URL=\"\(.*\)\"|SUBSCRIBE_URL=\"${SUBSCRIBE_URL}\"|" ${APP_PATH}/.env
APP_COMPOSE_FILE_NAME="docker-compose.yml"
APP_COMPOSE_FILE_PATH="${APP_PATH}/${APP_COMPOSE_FILE_NAME}"
cd ${APP_PATH} && docker-compose -f ${APP_COMPOSE_FILE_PATH} down && docker-compose -f ${APP_COMPOSE_FILE_PATH} up -d
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。