现在我试图从普通的Ubuntu bash中使用zsh。 当我更改为zsh shell时,我发现以前的.bashrc
环境variables(例如JAVA_HOME)不能自动迁移到.zshrc
。 现在我只是将它们(导出,别名在.bashrc中)复制到.zshrc
。 我想知道是否有其他方便的方式来共享这些东西在.bashrc
,不需要明确地复制它们? 甚至当我在.zshrc
添加一些东西,然后改成正常的bash,仍然可以在.zshrc
中将它们共享,而不需要将它们复制到.bashrc
。
我试图source .zshrc
在.bashrc
,然后改变为bash,发现下面的错误
exec bash autoload: command not found bash: /home/zhuguowei/.oh-my-zsh/oh-my-zsh.sh: line 31: syntax error near unexpected token `(' bash: /home/zhuguowei/.oh-my-zsh/oh-my-zsh.sh: line 31: `for config_file ($ZSH/lib/*.zsh); do'
而在.zshrc
我也尝试了source .bashrc
,也有错误
source .zshrc /home/zhuguowei/.bashrc:16: command not found: shopt /home/zhuguowei/.bashrc:24: command not found: shopt /home/zhuguowei/.bashrc:108: command not found: shopt /usr/share/bash-completion/bash_completion:35: parse error near `]]' \[\e]0;\u@\h: \w\a\]\u@\h:\w$
在.bashrc
您可以使用export
将变量(通常在UPPER_CASE中) export
到将发送到从shell执行的命令的环境中。
一个简单的.bashrc
例子
# Here is the content of the .bashrc export SOMETHING=42
现在在bash中,在获取bashrc之后,我有一个名为SOMETHING
的环境变量,其中包含42
你可以查看什么是环境beeing发送处理与命令env
现在,在打开的bash
,可以启动zsh
,然后检查( env
)zsh的当前环境。
现在在打开的zsh
,你可以echo $SOMETHING
并看到答案42
注意:如果你不知道我为什么用42
:( 维基百科 )
.bashrc
& .zshrc
要么