解决切换用户提示的sed报错

August 22, 2020

现象

sed: -e expression #1, char 24: unknown command: `.'

切换用户时(此用户是原来WSL2的默认账户),shell报以上错误。

考虑到是切换用户才导致的,因此怀疑.zshrc (or .bashrc)内有命令错误

移除未使用的命令

使用debug模式,尝试读取并执行.zshrc

如果不能确定当前.zshrc配置,请清理后再执行source!

source ~/.zshrc -x

果然,发现了新的错误:

compinit:501: no such file or directory: /usr/share/zsh/vendor-completions/_docker

这是由于复制时WSL2和WSL1在处理docker的方案上不同,导致自动补全的链接出现问题,移除WSL1容器内的docker自动补全

cd /usr/share/zsh/vendor-completions
# remove your deprecated auto-completions

再执行source,问题解决!


Copyright © Arcto 2022, Built with Gatsby