【问题标题】:mac terminal computer name is garbledmac终端计算机名乱码
【发布时间】:2017-06-21 07:53:26
【问题描述】:

当我使用终端输入zsh时,我的计算机名称是乱码,n3-85-8而不是MacBook-Pro。有时就像 bash 一样。有谁知道为什么?以及如何解决它。

【问题讨论】:

  • 我怀疑它是从其 IP 的反向 DNS 获取名称,而不是计算机的配置。检查您的 PS1 环境变量。
  • 如何检查PS1,我使用vim ~/.bash_profile,我没有设置任何PS1。另外,当我使用echo $PS1 时,结果是\h:\W \u\$。对吗?
  • zsh 不使用 .bash_profile -- 只有 bash 使用它。阅读zsh 文档以了解它加载了哪些启动文件。
  • 我的 bash 有时也有这个问题。

标签: bash macos terminal oh-my-zsh


【解决方案1】:

这里发生了两种影响:

  • Bash 仅在 shell 启动时读取主机名(如提示符所示)一次,这意味着您仅在启动新 shell 时才能看到更改,而不是在主机名更改时。
  • macOS 默认会根据网络配置更改自己的主机名

您可以将您的计算机配置为不更改其主机名(例如参见this question)。或者,您可以将 bash 配置为在提示符中使用计算机的持久化LocalHostName。当您连接到不同的网络时,此值不会改变。

您可以编辑您的~/.bashrc(或相关文件),使其具有如下行:

PS1=$(scutil --get LocalHostName)':\W \u\$'

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-10-29
    • 2015-04-06
    • 2017-01-21
    • 2011-05-03
    • 2015-07-14
    • 2011-04-12
    • 2018-03-21
    • 2014-01-07
    相关资源
    最近更新 更多