环境相关问题:编码、路径与网络

装好之后仍然会遇到的四类环境问题。中文用户比英文用户更容易撞上前两类,因为它们都和「非英文字符」有关。

约 8 分钟

安装成功、登录正常,但用起来还是不对劲——这一节讲的是那些不属于安装故障、却会持续给你添麻烦的环境问题。

前两类中文用户撞上的概率远高于英文用户,因为它们的根子都在「非英文字符」。

一、终端里的中文显示成乱码

症状:中文变成一串 ????、方块,或者 测试 这样的怪字符。

原因:终端在用一张过时的字符对照表去解读 UTF-8 编码的文字。这是 Windows 上的老问题,简体中文版 Windows 的默认编码历史上是 GBK 而不是 UTF-8。

处理

最省事的办法:改用 Windows Terminal。 它默认就是 UTF-8,装了之后这类问题基本消失。在 Microsoft Store 里搜「Windows Terminal」,Windows 11 一般已经自带。

临时办法:在当前窗口里先执行一次

chcp 65001

65001 就是 UTF-8。只对当前窗口有效,关掉就没了。

chcp 65001 是排查用的,不是解决方案。 如果每次都要敲,说明你该换终端了。

macOS 上一般不会有这个问题

macOS 的终端默认就是 UTF-8。如果 macOS 上也出现乱码,那多半不是终端的问题,是你让它读的那个文件本身编码不对——见下面第三节。

二、路径里的中文和空格

症状cd 到某个文件夹时报「找不到」,或者只走到路径的一半就停了。

原因:路径里有空格时,终端会把空格当成参数的分隔符——cd 我的 文档 被理解成了两个东西。

三个处理办法,从好到差

① 拖。 先输入 cd (后面留一个空格),然后把文件夹从访达 / 文件资源管理器拖进终端窗口。路径会自动填好,而且引号会自动加上

② 用引号包起来。

Terminal
cd "/Users/你的名字/文档/2026 年度调研"

③ 一劳永逸的做法:干活的文件夹用英文和数字命名。

这一条值得认真考虑。 不是因为终端处理不了中文——它能处理——而是因为路径会出现在太多地方:命令里、配置文件里、它写给你的日志里、你发给同事的说明里。任何一个环节出问题,都要花时间去分辨到底是哪一环。

中文文件名是没问题的,中文文件夹名也能用。 需要克制的是空格——用连字符或下划线代替。

三、文件本身的编码不对

症状:让它读一个 CSV 或 TXT,它读出来的是乱码,或者说这个文件读不了。

原因:那个文件不是 UTF-8 编码的。Excel 导出的 CSV 是重灾区——它默认导出的是本地编码,不是 UTF-8。

处理

在 Excel 里另存为时,选「CSV UTF-8(逗号分隔)」,不要选普通的「CSV」。

一个下拉框的差别,能解决绝大多数这类问题。

更好的做法是干脆别用 CSV.xlsx 把编码信息写在了文件结构里,天生跨平台稳定;.csv 是纯文本,文件里不带「我是什么编码」这个信息,只能靠打开它的程序去猜。

换行符

还有一类更隐蔽的:Windows 和 macOS / Linux 的换行符不一样(前者是两个字符,后者是一个)。

平时看不出来,但当同一个文件被两边轮流编辑时,可能出现「整个文件都被标记为改过了」这种情况——实际上一个字都没变,变的只是换行符。

如果你在用 Git 做版本管理,配置一次就能自动处理,见第 04 章的面向非技术用户的 Git 基础不用 Git 的话,这件事影响不大,知道有这回事就行。

四、网络

先自查连通性

安装和更新都要从 downloads.claude.ai 下载。测一下能不能到:

Terminal
curl -sI https://downloads.claude.ai/claude-code-releases/latest

Windows PowerShell 上要写 curl.exe——PowerShell 里的 curl 是另一个东西,不认这些参数。

看第一行:

你看到 含义
200 通了
403 有东西在拦,或者你所在的地区不受支持
5xx 服务端临时问题,等几分钟
没有输出 / Could not resolve host / 超时 连不上

公司网络要走代理

这是办公环境里最常见的一种。 如果你的公司要求所有流量走一个代理,安装之前先设两个环境变量:

macOS / Linux:

Terminal
export HTTP_PROXY=http://proxy.example.com:8080
export HTTPS_PROXY=http://proxy.example.com:8080
curl -fsSL https://claude.ai/install.sh | bash

Windows PowerShell:

PowerShell
$env:HTTP_PROXY = 'http://proxy.example.com:8080'
$env:HTTPS_PROXY = 'http://proxy.example.com:8080'
irm https://claude.ai/install.ps1 | iex

代理地址找 IT 要,或者从浏览器的代理设置里看。

证书报错

unable to get local issuer certificate

公司网络里做流量检查时常见:它用自己的证书替换了原始证书,而你的系统不认这张证书。

这需要 IT 把公司的根证书装到你的系统里。 参考官方的网络配置文档

关于地区

如果看到 App unavailable in region,那是地区判定,不是网络故障。

具体的网络配置属于你自己的环境,我们不提供也不建议任何相关方案。 这一条在账号风控机制与异常判定里说明过原因。

一份自查顺序

出问题时按这个顺序走,能省掉很多试错:

顺序 做什么 排除什么
1 claude doctor 安装与配置本身
2 看终端里的中文正不正常 终端编码
3 pwd 确认你在哪 工作目录不对
4 curl -sI 测连通性 网络
5 单独打开那个文件看一眼 文件本身的编码

大部分「它今天怎么变笨了」,查到最后是第 3 步。 你在错的文件夹里启动了它,它当然看不到你说的那些文件——见登录授权、安装验证与工作目录


这一章到这里

装好了、登录了、知道出问题时该查什么。下一章讲怎么把活儿交给它——从「任务交办的六个要素」开始。

本节事实查证日期:2026-08-05。 网络连通性检查、代理变量与证书部分依据官方 Troubleshoot installation and loginNetwork configuration。 终端编码、路径与换行符部分为通用环境知识,非 Claude Code 官方文档内容

← 回到手册目录