在这里,我将向您展示如何在 VPS 和您的Telegram之间传输文件(无需在 VPS 上进行任何新安装)。
所有操作系统、Android/Linux/Windows/Mac/IOS/等都支持流行的 Telegram 信使,甚至在浏览器中也支持通过 Telegram Web ( https://web.telegram.org ),因此能够快速传输文件到/从Telegram 将节省时间和麻烦,不需要公开 http 服务器或端口。
本教程将产生:
1. 名为sft的 bash 函数(代表“将文件发送到 Telegram”)。
2. bash 别名gft(代表“从 Telegram 获取文件”)。
首先,我们将快速创建一个空的被动 Telegram 机器人:
在安装了 Telegram 的机器中转到以下地址:
https
://t.me/botfather 或在 Telegram 中搜索“ botfather ”。
在 botfather 中,只需键入命令 /newbot 并按照一些说明进行操作,直到您从 botfather 获得令牌。
令牌看起来像这样:
7657098866:HTfjCUuGgXjPygUFGGviviguHI
我们在这里将其称为YourBOTToken
将您的令牌保存在某处。
现在我们需要获取 Telegram 帐户聊天 ID。
输入您的新电报机器人,启动它并在其中输入一些文本。然后转到您的浏览器并访问:
https://api.telegram.org/bot<YourBOTToken>/getUpdates
搜索如下所示的对象:"chat":{"id":437965788并保存此号码。这将是以下示例中的ChatID。
现在一切就绪。
为了将文件从 VPS 发送到 Telegram 机器人,请使用您的聊天 ID 和机器人令牌编辑此功能:
sft () { curl -F chat_id="<ChatID>" -F document=@"$1" -F caption="File from server" https://api.telegram.org/bot<YourBOTToken>/sendDocument ; }
用法:sft 文件名
为了从你的 Telegram 机器人中获取文件到 VPS 编辑这个别名:
alias gft="curl https://api.telegram.org/file/bot<YourBOTToken>/$(curl -s https://api.telegram.org/bot<YourBOTToken>/getFile?file_id=$(curl -s https://api.telegram.org/bot<YourBOTToken>/getUpdates |grep -oP file_id'"':'"'.*?'"' | tail -1 | cut -d """ -f 3) |cut -d ":" -f 7 | cut -d """ -f 2) --output file-from-telegram"
用法:将文件上传到您的 Telegram 机器人,然后在终端中输入gft 。它将下载最后一个文件。您下载的任何文件都将以file-from-telegram的名称保存,因此最好立即重命名。
gft代码有时很棘手,如果无法下载您的文件,只需长按 Telegram 机器人中的文件,单击“回复”并添加一些文本,然后重试。它应该(最终)起作用。使用命令检查文件大小或文件类型file file-from-telegram以验证文件。
Telegram 机器人的最大文件大小低于其一般限制。如果他们按照承诺增加它,它曾经是 50MB idk。
如果你喜欢stf/gft,你可以将它们保存在 ~/.bashrc 中,这样它们就会永久存在。