腾讯云海外企业账号 腾讯云命令行工具使用
你有没有过这种时刻:
凌晨两点,服务器崩了,你抓着手机蹲在马桶上刷新控制台,发现某个负载均衡监听器莫名被删了;
想批量关掉12台测试机,结果点错一个,把生产环境的Redis实例顺手停了;
领导微信甩来一句“快导出所有地域的CVM列表”,你打开浏览器,切8个标签页,手动翻页、复制、粘贴、合并Excel……最后发现第5页漏了一台,重来。
别急——不是你手残,是时候让腾讯云命令行工具(Tencent Cloud CLI)来接管你的深夜救火现场了。
它不是另一个Linux命令,它是你的云上遥控器
很多人一听“CLI”,下意识皱眉:又要配环境?又要记一堆flag?又要背JSON结构?
放心,腾讯云CLI(官方名 tccli)不是让你回归DOS时代的刑具,而是把控制台里那些鼠标点十下才能完成的操作,压缩成一行带呼吸感的命令。它不替代API,但比API友好十倍;不取代控制台,但比控制台快五倍。
一句话定义:tccli = 控制台的极简主义分身 + Shell里的云服务翻译官。
三步装好,五秒认证:别让安装劝退你
先破除一个幻觉:装CLI=编译源码+改PATH+祈祷玄学成功?不存在的。
Mac用户(含M系列芯片):
brew install tccli
完事。没有“请等待3分钟”,没有“正在下载478MB依赖包”,就这。
Windows用户:
打开 PowerShell,敲:
pip install tccli
(如果提示 pip 版本旧,加一句 python -m pip install --upgrade pip 即可)
Ubuntu/Debian系:
sudo apt update && sudo apt install python3-pip -y && pip3 install tccli
装完验证?就一行:
tccli version
看到类似 tccli/3.0.983.0 的输出,恭喜,你已解锁云上键盘侠身份。
认证?不是填AccessKey,是“扫码即登”
老派做法:去腾讯云访问管理→创建子用户→勾选“编程访问”→抄下SecretId和SecretKey→粘贴进~/.tccli/config……然后半夜密钥泄露,全公司陪跑安全审计。
新姿势:tccli login,直接弹出二维码,微信扫码,选账号,确认授权——3秒完成。登录态默认保留7天,自动续期,不用密钥,不存明文,连密码都不输。
不信?试试:
tccli login
扫完码,终端会显示:
✔ 登录成功!当前身份:[email protected](主账号)
✔ 默认地域:ap-guangzhou
看,连默认地域都帮你记住了——再也不用每次敲 --region ap-shanghai 到手抽筋。
真·日常高频命令,抄了就能用
别背手册。我们只列你真正会天天敲的5条命令,附带人话解释和防坑备注:
① 查所有CVM,按状态分组(比控制台表格清爽10倍)
tccli cvm DescribeInstances --Filters 'Name=instance-state,Values=RUNNING,STOPPED' --OutputFormat json | jq '.InstanceSet[] | {id:.InstanceId, name:.InstanceName, status:.InstanceState, zone:.Placement.Zone}'
💡 小技巧:加 | jq 是为了格式化输出(没装jq?pip install jq 或直接删掉管道后半截,看原始JSON也行);--OutputFormat table 还能出对齐表格,适合截图发钉钉。
腾讯云海外企业账号 ② 一键关停所有测试机(带确认,不怕手滑)
tccli cvm StopInstances --InstanceIds ['ins-abc123', 'ins-def456'] --DryRun
加 --DryRun 参数,它只告诉你“如果真执行,会停哪几台”,不真动手。确认无误后,删掉 --DryRun 再跑一次——安全感拉满。
③ 给某台CVM换公网IP(不用进控制台点17下)
tccli eip AllocateAddresses --AddressCount 1 --InternetChargeType BANDWIDTH_PREPAID --Bandwidth 5
# 记住返回的AllocationId,比如eip-xyz789
tccli eip AssociateAddress --AllocationId eip-xyz789 --InstanceId ins-abc123
⚠️ 注意:BANDWIDTH_PREPAID 是包年包月带宽,如需按量付费,改成 TRAFFIC_POSTPAID_BY_HOUR,别抄错。
④ 查某个CLB监听器下的全部后端(排查502神器)
tccli clb DescribeTargets --LoadBalancerId lb-xxxx --ListenerId lbl-xxxx
输出直接告诉你每台后端的健康状态、端口、权重——比在控制台里点开监听器→点转发规则→点健康检查→再点后端服务器,省下42秒人生。
⑤ 删除一个快照(但先看看它绑没绑定云盘)
tccli snapshot DescribeSnapshots --SnapshotIds ['snap-123456'] --OutputFormat yaml
用 --OutputFormat yaml,人类可读性暴增;重点看 CreationTime 和 SnapshotState,如果是 TASK_SUCCESS 才能删,PENDING 的快照删了会报错:“对不起,我还在努力生成中”。
进阶彩蛋:不用写Python,也能批量操作
老板说:“把华北、华东、华南所有‘test-’开头的CVM关掉。”
你当然可以写个for循环调API——但更懒的办法是:
# 先查出来,保存为文件
tccli cvm DescribeInstances --Filters 'Name=instance-name,Values=test-*' --OutputFormat json > instances.json
# 提取所有InstanceId(用jq一行流)
jq -r '.InstanceSet[].InstanceId' instances.json | xargs -I {} tccli cvm StopInstances --InstanceIds ["{}"]
全程不用碰Python,不用装SDK,纯Shell+tccli组合技,10秒搞定跨地域批量关停。
最后送你一句心里话
命令行不是极客专利,也不是运维KPI考核项。它只是当你第3次在控制台里翻页找实例时,突然意识到:“等等,我是不是在用图形界面干着本该由键盘完成的事?”
腾讯云CLI不会让你成为Linux大神,但它能让你少点127次鼠标,少等89秒页面加载,少一次凌晨三点的误操作回滚。
装一个,试一条命令,今晚就用它关掉那台睡着的测试机。
——毕竟,云不是用来点的,是拿来使唤的。


