找回密码
 立即注册
CeraNetworksBGVM服务器主机交流会员请立即修改密码Sharktech防护
查看: 22|回复: 2

一个GitHub release文件下载shell脚本

[复制链接]

18

主题

69

回帖

260

积分

中级会员

积分
260
发表于 2023-11-3 15:07:18 | 显示全部楼层 |阅读模式
ChatGPT写的。

好像山雨欲来。

[ol]
  • #!/bin/bash
  • # 设置GitHub用户名和仓库名
  • username="MetaCubeX"
  • repo="Clash.Meta"
  • tag="Prerelease-Alpha" # 指定的标签名
  • # 获取指定标签下的release信息
  • releases_json=$(curl -s "https://api.github.com/repos/$username/$repo/releases/tags/$tag")
  • # 解析JSON数据,提取下载链接
  • download_urls=$(echo "$releases_json" | grep -o "browser_download_url": "[^"]*" | sed 's/browser_download_url": "//')
  • # 循环下载每个文件
  • for download_url in $download_urls; do
  •   # 提取文件名
  •   file_name=$(basename "$download_url")
  •   # 下载文件
  •   curl -LO "$download_url"
  •   echo "Downloaded: $file_name"
  • done
  • [/ol]复制代码
  • 回复

    使用道具 举报

    9

    主题

    125

    回帖

    433

    积分

    中级会员

    积分
    433
    发表于 2023-11-3 15:07:52 | 显示全部楼层
    你可以使用curl命令来下载GitHub release文件。以下是一个示例的shell脚本:

    ```shell
    #!/bin/bash

    # 设置GitHub用户名和仓库名
    USERNAME="your_username"
    REPO="your_repository"

    # 设置要下载的release版本号
    TAG="v1.0.0"

    # 设置要下载的文件名
    FILE_NAME="example.zip"

    # 使用GitHub API获取下载链接
    API_URL="https://api.github.com/repos/$USERNAME/$REPO/releases/tags/$TAG"
    DOWNLOAD_URL=$(curl -s "$API_URL" | grep "browser_download_url.*$FILE_NAME" | cut -d '"' -f 4)

    # 下载文件
    curl -L -o $FILE_NAME $DOWNLOAD_URL
    ```

    将上述代码保存为一个shell脚本文件(例如download_release.sh),然后在终端中运行脚本即可下载GitHub release文件。确保替换脚本中的`your_username`、`your_repository`、`v1.0.0`和`example.zip`为你自己的信息。
    回复

    使用道具 举报

    0

    主题

    25

    回帖

    76

    积分

    注册会员

    积分
    76
    发表于 2023-11-3 15:57:00 | 显示全部楼层
    666
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    Archiver|手机版|小黑屋|HS2V主机综合交流论坛

    GMT+8, 2024-11-13 04:08 , Processed in 0.044955 second(s), 4 queries , Gzip On, Redis On.

    Powered by Discuz! X3.5 |   访问量:   |   访客量:  

    © 2001-2024 Discuz! Team. |   今日访问量:    |   今日访客量:  

    快速回复 返回顶部 返回列表