我在使用opkg
entware 包管理器运行的嵌入式发行版上。我有一个bash
安装,现在或永远都不支持制表符补全。所以,我要切换到zsh
.
切换成功了zsh
,但是在这个精简版的linux中,换壳后viarc
启动时读取的文件不会自动改变。它仍然是,这在很大程度上是良性的。zsh
exec zsh
~/.bashrc
但是,它打破了zsh
提示。
\[\033[00;37m\]this-comp\[\033[01;31m\]: \[\033[01;37m\]$(echo -n "${PWD/#$HOME/\~}" | awk -F "/" '{
if (length($0) > 50) { if (NF>4) print $1 "/" $2 "/.../" $(NF-1) "/" $NF;
else if (NF>3) print $1 "/" $2 "/.../" $NF;
else print $1 "/.../" $NF; }
else print $0;}')/\[\033[00m\]
如何在更改 shell 时配置或强制启动文件而不是.zshrc
?.bashrc
否则,我将不得不修改.bashrc
设备更新程序提供的脚本。
要在更改 shell 时强制启动文件为 .zshrc 而不是 .bashrc,可以在执行 zsh 时使用 --rcfile 选项。例如,您可以使用命令
exec zsh --rcfile ~/.zshrc
确保在启动 zsh 时读取 .zshrc 文件。你也可以使用 -f 选项,它会在 zsh 启动时执行指定的配置文件,如exec zsh -f ~/.zshrc
. 最后,您可以使用以下命令设置 ZDOTDIR 环境变量,它将覆盖默认配置目录export ZDOTDIR=~/.zshrc.