如果你在 Ubuntu 服务器或桌面环境中想通过命令行使用 TG(Telegram 客户端),官方推出的 Telegram CLI 是一个轻量选择。它适合需要脚本自动化、低资源占用或远程管理场景的用户。本文先给出结论:官方 CLI 功能有限但足够基础使用,第三方工具更灵活但需注意安全。下面从安装到常见问题逐一说明。

为什么选择 TG 客户端 CLI

TG 官方提供桌面版、移动版和网页版,而 CLI 版本专为终端设计。它的优势包括:

  • 资源占用低:无需图形界面,适合服务器或旧电脑。
  • 自动化友好:可通过脚本发送消息、下载文件。
  • 远程操作:SSH 登录后即可管理账号和群组。

但需注意:CLI 版本更新较慢,部分高级功能(如视频通话、贴纸管理)缺失。若需要完整功能,建议搭配桌面版使用。

安装 Telegram CLI 的两种方式

方式一:通过官方源码编译

官方 CLI 项目托管在 GitHub,需自行编译。步骤如下:

  1. 安装依赖:sudo apt install libreadline-dev libconfig-dev libssl-dev lua5.2 liblua5.2-dev libevent-dev libjansson-dev libpython-dev make git(Ubuntu 20.04 及以上版本可能需调整包名)。
  2. 克隆仓库:git clone --recursive https://github.com/vysheng/tg.git。
  3. 进入目录并配置:./configure。
  4. 编译:make。

编译成功后,在 bin 目录下生成可执行文件 telegram-cli。此方式适合有一定 Linux 经验的用户。

方式二:使用第三方封装工具

社区有基于官方库的封装工具,如 telegram-cli 的 PPA 或 Snap 包,但更新不稳定。更推荐使用 tdlib 或 telethon(Python 库)实现类似功能。例如,通过 pip 安装 telethon 后编写脚本,灵活性更高。注意:第三方工具需自行评估安全性,避免泄露 API 密钥。

登录与基础配置

首次运行 telegram-cli 会提示输入手机号(含国家代码),随后 TG 会发送验证码到其他已登录设备或短信。输入验证码后即可进入交互界面。配置文件默认位于 ~/.telegram-cli,可修改代理、下载路径等参数。

常用启动参数:

  • -p 指定端口(用于远程控制)
  • -k 指定公钥文件
  • -W 启用外部脚本接口

常用命令与操作示例

进入 CLI 后,可使用以下命令(部分需在消息界面输入):

命令作用
help查看所有命令
msg 联系人 内容发送消息
chat_with_peer 联系人进入对话
send_file 联系人 文件路径发送文件
dialog_list列出所有对话
quit退出

例如,发送消息:msg @username Hello。注意联系人需使用用户名或已保存的昵称。

注意事项与安全建议

  • 验证码接收:若无法收到短信,可尝试在已登录的 TG 客户端中查看验证码。
  • 两步验证:若账号开启了两步验证,CLI 登录时需输入密码。
  • 会话安全:CLI 登录后会在 ~/.telegram-cli 保存会话文件,请确保目录权限为 700,避免泄露。
  • 代理配置:在受限网络下,可在配置文件中设置 SOCKS5 代理。
  • 避免违规:不要使用 CLI 进行批量发送垃圾消息,否则可能导致账号受限。

常见问题

Q1:编译时报错缺少依赖?

根据错误提示安装对应开发包,如 libssl-dev 或 liblua5.2-dev。Ubuntu 版本差异可能导致包名不同,可搜索对应包。

Q2:登录后无法发送消息?

检查联系人名称是否正确,或使用 dialog_list 查看对话 ID。部分群组需先加入才能发送。

Q3:CLI 支持中文吗?

支持,但终端需设置 UTF-8 编码。若显示乱码,可执行 export LANG=en_US.UTF-8 后重试。

Q4:如何退出登录?

在 CLI 中输入 quit 退出程序,但会话仍保留。如需完全注销,删除 ~/.telegram-cli 目录,并在 TG 手机端「设备」中终止该会话。

替代方案与总结

官方 CLI 适合轻量使用,但若需要更稳定的自动化,推荐使用 Telethon(Python)或 tdlib 绑定。它们支持异步操作、完整 API 和更好的错误处理。无论选择哪种工具,请始终遵守 TG 服务条款,保护账号安全。希望本教程能帮你在 Ubuntu 上顺利使用 TG 命令行客户端。