Skip to content

Commit af7fc88

Browse files
author
和尚
authored
Merge pull request sngxpro#15 from mixool/dust
添加DIY脚本通知
2 parents 0bd4ef7 + 34df461 commit af7fc88

1 file changed

Lines changed: 36 additions & 16 deletions

File tree

shell_script_mod.sh

Lines changed: 36 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,38 @@
1-
#!/bin/sh
1+
#!/usr/bin/env bash
2+
## CUSTOM_SHELL_FILE for https://gitee.com/lxk0301/jd_docker/tree/master/docker
3+
### 编辑docker-compose.yml文件添加: - CUSTOM_SHELL_FILE=https://raw.githubusercontent.com/monk-coder/dust/dust/shell_script_mod.sh
4+
#### 容器完全启动后执行 docker exec -it jd_scripts /bin/sh -c 'crontab -l' 查看目前修行的经书
25

3-
## 克隆monk-coder仓库
4-
if [ ! -d "/monk/" ]; then
5-
echo "未检查到monk-coder仓库脚本,初始化下载相关脚本..."
6-
git clone https://github.com/monk-coder/dust /monk
7-
else
8-
echo "更新monk-coder脚本相关文件..."
9-
git -C /monk reset --hard
10-
git -C /monk pull origin main --rebase
11-
fi
12-
cp -f /monk/car/*_*.js /scripts
13-
cp -f /monk/i-chenzhe/*_*.js /scripts
14-
cp -f /monk/member/*_*.js /scripts
15-
cp -f /monk/normal/*_*.js /scripts
6+
function monkcoder(){
7+
# https://github.com/monk-coder/dust
8+
rm -rf /monkcoder /scripts/monkcoder_*
9+
git clone https://github.com/monk-coder/dust.git /monkcoder
10+
# 拷贝脚本
11+
for jsname in $(find /monkcoder -name "*.js" | grep -vE "\/backup\/"); do cp ${jsname} /scripts/monkcoder_${jsname##*/}; done
12+
# 匹配js脚本中的cron设置定时任务
13+
for jsname in $(find /monkcoder -name "*.js" | grep -vE "\/backup\/"); do
14+
jsnamecron="$(cat $jsname | grep -oE "/?/?cron \".*\"" | cut -d\" -f2)"
15+
test -z "$jsnamecron" || echo "$jsnamecron node /scripts/monkcoder_${jsname##*/} >> /scripts/logs/monkcoder_${jsname##*/}.log 2>&1" >> /scripts/docker/merged_list_file.sh
16+
done
17+
}
1618

17-
## 合并monk&i-chenzhe大师脚本进入crontab列表
18-
cat /monk/i-chenzhe/remote_crontab_list.sh /monk/remote_crontab_list.sh >> /scripts/docker/merged_list_file.sh
19+
function main(){
20+
# 首次运行时拷贝docker目录下文件
21+
[[ ! -d /jd_diy ]] && mkdir /jd_diy && cp -rf /scripts/docker/* /jd_diy
22+
# DIY脚本执行前后信息
23+
a_jsnum=$(ls -l /scripts | grep -oE "^-.*js$" | wc -l)
24+
a_jsname=$(ls -l /scripts | grep -oE "^-.*js$" | grep -oE "[^ ]*js$")
25+
monkcoder
26+
b_jsnum=$(ls -l /scripts | grep -oE "^-.*js$" | wc -l)
27+
b_jsname=$(ls -l /scripts | grep -oE "^-.*js$" | grep -oE "[^ ]*js$")
28+
# DIY脚本更新TG通知
29+
info_more=$(echo $a_jsname $b_jsname | tr " " "\n" | sort | uniq -c | grep -oE "1 .*$" | grep -oE "[^ ]*js$" | tr "\n" " ")
30+
[[ "$a_jsnum" == "0" || "$a_jsnum" == "$b_jsnum" ]] || curl -sX POST "https://api.telegram.org/bot$TG_BOT_TOKEN/sendMessage" -d "chat_id=$TG_USER_ID&text=DIY脚本更新完成:$a_jsnum $b_jsnum $info_more" >/dev/null
31+
# LXK脚本更新TG通知
32+
lxktext="$(diff /jd_diy/crontab_list.sh /scripts/docker/crontab_list.sh | grep -E "^[+-]{1}[^+-]+" | grep -oE "node.*\.js" | cut -d/ -f3 | tr "\n" " ")"
33+
test -z "$lxktext" || curl -sX POST "https://api.telegram.org/bot$TG_BOT_TOKEN/sendMessage" -d "chat_id=$TG_USER_ID&text=LXK脚本更新完成:$(cat /jd_diy/crontab_list.sh | grep -vE "^#" | wc -l) $(cat /scripts/docker/crontab_list.sh | grep -vE "^#" | wc -l) $lxktext" >/dev/null
34+
# 拷贝docker目录下文件供下次更新时对比
35+
cp -rf /scripts/docker/* /jd_diy
36+
}
37+
38+
main

0 commit comments

Comments
 (0)