powershell执行策略报错是因默认禁用本地.ps1脚本,需运行set-executionpolicy remotesigned -scope currentuser并重启终端;项目路径避开onedrive、program files等受保护目录;wsl开发应使用remote-wsl扩展而非/mnt/c;eacces错误多因目录属主为root,需sudo chown -r $user:$groups修复。

PowerShell执行策略报“cannot be loaded because running scripts is disabled”
这不是文件权限问题,而是Windows默认禁止本地.ps1脚本执行。VSCode终端一启动就用PowerShell,只要项目里有build.ps1或start.ps1,就会卡住或静默失败,错误里根本不会出现Access Denied四个字,但行为完全一致。
- 运行
Get-ExecutionPolicy -List,重点看CurrentUser那一行;如果是Restricted,所有本地.ps1都会被拦 - 只对当前用户放开:
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser(无需管理员权限,安全可逆) - 改完必须关掉现有终端,再按
Ctrl+Shift+`新开一个——旧终端不会自动刷新策略 - 别用
Unrestricted或Bypass,公司电脑上组策略可能几小时后就把它打回原形
项目在C:Program Files、OneDrive或Downloads下报Access Denied
这些路径受Windows实时保护、UAC虚拟化或同步锁限制,哪怕你是管理员,VSCode也没法往里写文件或运行可执行程序。不是VSCode的问题,是Windows故意把你挡在外面。
- 把项目移到干净路径,比如
D:projectsmyapp或C:devmyapp,避开C:UsersXXXOneDrive和C:UsersXXXDownloads - 进终端输
pwd确认当前路径——如果显示C:Windows、C:Program Files或C:UsersXXXOneDrive,立刻cd出来 - npm全局安装工具时,优先配
npm config set prefix ~/.local(Windows可用%USERPROFILE%.local),再把对应bin加进PATH - 绝对不要为图省事勾选VSCode快捷方式的“以管理员身份运行此程序”,这会让所有
postinstall脚本都带高权限执行
WSL中VSCode保存文件失败,chmod无效
你在/mnt/c下改了chmod 755,但./script.sh还是报Permission denied?NTFS不存POSIX权限位,chmod只是假装生效。真正该做的是别在Windows挂载区开发。
对设计或页面进行 WCAG 2.1 AA 无障碍审计。触发关键词:“audit accessibility”、 “check a11y”、 “is this accessible?” 或在审查设计时使用。
- 装
Remote - WSL扩展,按Ctrl+Shift+P输Remote-WSL: New Window,在新窗口里打开/home/yourname/project - 别通过Windows资源管理器打开
\wsl$Ubuntuhome...再拖进VSCode——这会退化成混合权限模型,chown都救不回来 - 如果文件属主是
root,在WSL终端里跑sudo chown -R $USER:$USER /home/yourname/project,别在Windows端硬改 -
/mnt/c只适合读取Windows文件,写操作一律放在WSL原生路径下
VSCode保存文件时报EACCES: permission denied
这个错几乎全是目录归属搞错了。你之前用sudo code .开过项目,或者从root用户那里cp过来整个文件夹,VSCode现在想覆盖文件,但发现目标路径属主是root,而你只是普通用户。
- 进项目根目录,跑
ls -ld .看文件夹归属;再ls -l filename看具体文件——如果显示root:root或root:staff,就是它了 - 修复命令:
sudo chown -R $USER:$GROUPS ./your-project-folder(Linux/macOS/WSL都适用) - 千万别
chmod 777,macOS某些版本会触发SIP保护,反而让VSCode连配置都读不了 - 检查是否启用了
Remote-SSH或Dev Containers——这种场景下权限由远端决定,本地改没用
真正的麻烦不在修,而在下次又掉进去。Windows的UAC、WSL的挂载机制、PowerShell策略,它们层层叠叠,表面都是“Access Denied”,背后原因却完全不同。动手前先看清楚错误信息里到底写了什么,比盲目提权靠谱得多。










