如何通过Steam CLI登录启用Steam Guard的Steam账号?
解决Steam CLI登录带Steam Guard账号的非交互式问题
首先明确:Steam CLI原生不支持通过-login命令行参数直接传入Steam Guard验证码,你尝试的在密码后追加或替换密码的方式确实无效,因为该参数的设计只接受用户名和密码(或匿名)。
可行的解决方案有两种:
1. 生成持久化登录凭证(推荐)
首次登录时手动完成Steam Guard验证,之后Steam CLI会在本地生成ssfn开头的凭证文件,后续登录无需再输入验证码:
- 执行命令:
steamcmd -login your_username your_password - 此时会弹出窗口要求输入Steam Guard验证码,输入完成后成功登录
- 退出Steam CLI后,下次直接执行
steamcmd -login your_username your_password即可自动登录(依赖本地的ssfn文件,不要删除该文件)
2. 非交互式登录(适用于自动化场景)
如果需要完全无交互的登录,可以使用Steam CLI的内部命令+login,将验证码作为第三个参数传入:
steamcmd +login your_username your_password your_steam_guard_code +quit
注意:
- 这种方式仅在验证码有效时一次性生效,若验证码过期则登录失败
- 若你的Steam Guard是手机令牌(动态验证码),需要确保传入的是当前60秒内有效的令牌码
- 执行完成后建议加上
+quit让Steam CLI自动退出,避免停留在交互界面
另外补充:如果你的账号开启了手机令牌式Steam Guard,部分版本的Steam CLI可能需要先通过+set_steam_guard_code命令预先设置验证码,但实际测试中直接在+login后追加验证码的方式更稳定可靠。
内容的提问来源于stack exchange,提问作者ProfiHartzer
相关产品推荐
相关产品推荐

