是否可以在命令行中使用自定义PS1设置运行新的zsh或bash
shell?它应该分别覆盖.bashrc和.zshrc设置的默认主题.
我说的是zsh -myprompt =“是的主人?>”
编辑:
我不想影响任何用户端配置文件.我希望它适用于任何配置的用户.
解决方法
创建您自己的“shim”rc文件,该文件可供您的用户使用,然后使用–rcfile选项(对于bash)或–rcs选项(对于zsh)调用它.这应该首先获取用户的rcfile.例如,我们称之为/usr/local/share/.fancypromptrc.在bash中,这可能看起来像:
source "$HOME/.bashrc" export PS1="DOLLAZ $"
在zsh中,这可能看起来像:
source "${ZDOTDIR:-$HOME}/.zshrc" export PS1="DOLLAZ $"
然后用户将使用bash -rcfile /usr/local/share/.fancypromptrc启动bash.在zsh中它将是zsh –rcs /usr/local/share/.fancypromptrc.
这样用户不必修改他们的rc文件,如果他们已经设置了PS1,它仍然会被替换.唯一一次我能想象这不起作用的是,如果他们有一个覆盖PS1的PROMPT_COMMAND,或类似的东西.