【实战避坑】Claude Code 每次重启都要重新输 Key?永久配置环境变量的正确姿势
在使用Claude Code命令行工具(CLI)时,很多朋友(特别是刚刚尝试接入第三方模型,如 GLM、DeepSeek 等)可能会遇到这样一个困惑:
明明刚才已经在终端里输入了export命令配置好了地址和 Token,运行得好好的。结果关掉终端窗口再重新打开,或者重启电脑后,Claude Code 就报错连不上了,提示找不到配置。
难道每次写代码前,都要把那一长串配置命令重新敲一遍吗?
答案当然是:不需要。这篇文章就来帮你彻底解决这个问题,并带你理解背后的计算机原理。
1. 现象描述
你可能在安装完 Claude Code 后,执行了类似下面的命令来接入模型:
Bash
# 临时配置(示例) export ANTHROPIC_BASE_URL="https://open.bigmodel.cn/api/anthropic" export ANTHROPIC_AUTH_TOKEN="sk-xxxxxxxx"输入完这两行,直接输入 claude,运行完美。
但是,一旦你关闭当前终端窗口,再次打开并输入 claude,系统就会“失忆”,仿佛你从未配置过。
2. 为什么会这样?(原理图解)
这不是 Bug,而是Linux/macOS 系统 Shell 的基础机制。
我们可以把终端环境想象成一块黑板,而配置文件(如.zshrc)是一本教科书。
直接输入 export:就像在黑板上写字。下课(关闭窗口)后,黑板会被擦除,数据就丢了。
写入配置文件:就像把公式印在教科书里。每次上课(打开新窗口),系统会自动照着书本念一遍公式,配置就永远存在了。
为了让你更直观地理解,请看下图:
根据你的操作系统和使用的 Shell,选择下面的一种方法。
第一步:判断你在用什么 Shell
在终端输入:
Bash
echo $SHELL如果输出
/bin/zsh(macOS 默认,新版 Linux 常见):请看方案 A。如果输出
/bin/bash(旧版 Linux,Git Bash,WSL):请看方案 B。
方案 A:针对 Zsh 用户 (macOS/Linux)
重要提示:复制下面代码前,请务必将你的_真实_Token替换为你自己的 Key!不要直接复制!
Bash
# 1. 将配置追加写入到 .zshrc 文件中 # 注意:引号内要换成你真实的 URL 和 Token echo 'export ANTHROPIC_BASE_URL="https://open.bigmodel.cn/api/anthropic"' >> ~/.zshrc echo 'export ANTHROPIC_AUTH_TOKEN="你的_真实_Token_填在这里"' >> ~/.zshrc # 2. 让配置立即生效 source ~/.zshrc方案 B:针对 Bash 用户 (Linux/WSL)
重要提示:复制下面代码前,请务必将你的_真实_Token替换为你自己的 Key!
Bash
# 1. 将配置追加写入到 .bashrc 文件中 echo 'export ANTHROPIC_BASE_URL="https://open.bigmodel.cn/api/anthropic"' >> ~/.bashrc echo 'export ANTHROPIC_AUTH_TOKEN="你的_真实_Token_填在这里"' >> ~/.bashrc # 2. 让配置立即生效 source ~/.bashrc4. 救命!我不小心把“占位符”复制进去了怎么办?
这是一个新手非常容易踩的坑:忘记修改代码里的中文提示,直接把你的_Token这种文字写进配置文件了。
如果你发现运行claude报错,或者配置不生效,可以使用下面的方法修复:
使用 nano 编辑器修复(通用方法):
在终端输入
nano ~/.zshrc(如果是 bash 则输入nano ~/.bashrc)。使用键盘下箭头
↓滚动到文件最底部。你会看到刚才写错的那两行代码。
手动把写错的 Token 删掉,填入正确的。
按
Ctrl + O保存,回车确认,然后按Ctrl + X退出。别忘了最后再次执行
source ~/.zshrc。
5. 验证是否成功
关闭所有终端窗口,重新打开一个,直接输入:
Bash
echo $ANTHROPIC_AUTH_TOKEN如果终端打印出了你那一串真实的密钥字符(而不是空的,或者中文提示),恭喜你,配置已经永久生效了!现在你可以随时随地直接使用claude命令了。
希望这篇文章能帮到同样被环境变量困扰的开发者们!如果有用,欢迎点赞收藏。