宝塔面板本身不支持“监听远程链接内容变化并自动触发下载”的原生功能,需通过计划任务 + Shell 脚本实现定时轮询检测与自动下载。
核心逻辑是:定期比对本地文件与远程文件的 MD5/SHA256,若不一致则执行 wget/curl 覆盖下载。
实现步骤
登录宝塔面板,进入左侧菜单 【计划任务】,然后点击 【添加任务】,设置如下:
●任务类型:Shell 脚本
●任务名称:自动更新 rdpwrap.ini
●执行周期:建议每 6 小时 或 每天
●脚本内容(按你服务器实际路径修改 LOCAL_FILE)
#!/bin/bash
# ====== 配置区 ======
URL="https://raw.githubusercontent.com/sebaxakerhtc/rdpwrap.ini/master/rdpwrap.ini"
LOCAL_FILE="/www/backup/rdpwrap/rdpwrap.ini" # ← 改成你要存放的路径
TMP_FILE="/tmp/rdpwrap_ini_$$.tmp"
HASH_FILE="/tmp/rdpwrap_ini_last.md5"
# ===================
mkdir -p "$(dirname "$LOCAL_FILE")"
# 下载远程文件到临时位置
curl -sL --connect-timeout 10 "$URL" -o "$TMP_FILE"
# 如果下载失败则退出
if [ ! -s "$TMP_FILE" ]; then
rm -f "$TMP_FILE"
exit 1
fi
# 计算远程文件 hash
NEW_HASH=$(md5sum "$TMP_FILE" | awk '{print $1}')
# 读取上次记录的 hash
OLD_HASH=""
[ -f "$HASH_FILE" ] && OLD_HASH=$(cat "$HASH_FILE")
# 对比并决定是否替换
if [ "$NEW_HASH" != "$OLD_HASH" ]; then
cp "$TMP_FILE" "$LOCAL_FILE"
echo "$NEW_HASH" > "$HASH_FILE"
echo "[$(date '+%F %T')] rdpwrap.ini 已更新 (hash:$NEW_HASH)"
else
echo "[$(date '+%F %T')] 无变化,跳过下载"
fi
rm -f "$TMP_FILE"
![图片[1]-宝塔面板通过【计划任务】实现监听远程链接内容变化并自动触发下载-十一张](https://www.11zhang.com/wp-content/uploads/2026/06/4a47a0db6e20260623144032.webp)
![图片[2]-宝塔面板通过【计划任务】实现监听远程链接内容变化并自动触发下载-十一张](https://www.11zhang.com/wp-content/uploads/2026/06/fb5c81ed3a20260623144033.webp)
![图片[3]-宝塔面板通过【计划任务】实现监听远程链接内容变化并自动触发下载-十一张](https://www.11zhang.com/wp-content/uploads/2026/06/10fb15c77220260623144033.webp)
此方案利用 Linux 定时任务机制,是宝塔环境下最稳定、低成本的自动化同步方式 。
注意事项
1、权限问题:确保脚本写入的本地目录对 www 用户有写权限,否则下载会失败。
2、首次运行脚本前,先手动 touch /www/backup/rdpwrap/rdpwrap.ini 或让脚本自动建目录即可。
3、计划任务执行日志可在宝塔「计划任务」→ 对应任务右侧「日志」查看。
4、网络依赖:服务器需能访问该外部链接,若在内网需配置代理或白名单。
5、高频限制:避免设置过短的执行周期(如秒级),防止被源站封禁 IP。
THE END









暂无评论内容