1、根目录创建sh文件并写入以下内容(记得授权777)
#!/bin/bash
定义文件保存路径
CLIENT_ID_FILE="/root/client_id.txt"
定义 Push Plus Token,替换为你自己的
PUSH_PLUS_TOKEN="you token"
获取上次保存的 client_id
last_client_id=$(<"$CLIENT_ID_FILE")
使用 find命令查询 client_id
current_client_id=$(find /你的pdcn缓存目录/happ/happ.0/hdata/config -name "infos.json" -exec grep -r "client_id" {} + | awk '{print $NF}' | tr -d ',\"' | sort -u)
如果是首次运行或者当前 client_id 与上次不一致,则保存并打印输出当前 client_id
if [ -z "$last_client_id" ] || [ "$current_client_id" != "$last_client_id" ]; then
echo "本次获取的 client_id: $current_client_id"
echo "$current_client_id" > "$CLIENT_ID_FILE"
else
echo "本次获取的 client_id 与上次相同: $current_client_id"
fi
如果当前 client_id 与上次不一致,并且与上次推送内容不同,则发送通知
if [ "$current_client_id" != "$last_client_id" ] && [ "$current_client_id" != "$(cat last_pushed_client_id.txt)" ]; then
echo "client_id 发生变化,将发送通知"
curl -sS -G --data-urlencode "token=$PUSH_PLUS_TOKEN" --data-urlencode "title=49新的client_id" --data-urlencode "content=$current_client_id" --data-urlencode "template=html" https://www.pushplus.plus/send
echo "$current_client_id" > last_pushed_client_id.txt
else
echo "client_id 未发生变化,无需发送通知"
fi
2、创建定时任务自动检测client_id当检测到client_id变动时通过Push Plus发送最新id