s-blog

刷新命令缓存(hash -r / rehash)

ssssmy · 2026-05-28 · 1 min · Ubuntu

当安装了新版本的命令行工具,但终端仍然使用旧版本时,需要刷新命令缓存。

Linux / macOS

# 刷新 bash 命令缓存
hash -r

# 刷新 zsh 命令缓存
rehash

常见场景

安装新版本 Node.js 后

# 安装新版本
nvm install 18

# 刷新缓存
hash -r

# 验证版本
node -v

安装全局 npm 包后找不到命令

# 安装全局包
npm install -g typescript

# 刷新缓存
hash -r

# 验证
tsc --version

Windows

Windows 不需要手动刷新命令缓存,新安装的命令通常立即生效。如果不生效,可以:

# 刷新环境变量
$env:Path = [System.Environment]::GetEnvironmentVariable("Path","Machine") + ";" + [System.Environment]::GetEnvironmentVariable("Path","User")

原文链接:https://www.ssssmy.com/notes/shua-xin-ming-ling-huan-cun-hash-r-rehash