加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
restart.sh 1.50 KB
一键复制 编辑 原始数据 按行查看 历史
阿熊 提交于 2022-02-20 21:48 . feat: init project
#!/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
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化