![Shell 在 Mac 上的提示符(zsh)中将未知整数附加到主机名](https://linux22.com/image/1653313/Shell%20%E5%9C%A8%20Mac%20%E4%B8%8A%E7%9A%84%E6%8F%90%E7%A4%BA%E7%AC%A6%EF%BC%88zsh%EF%BC%89%E4%B8%AD%E5%B0%86%E6%9C%AA%E7%9F%A5%E6%95%B4%E6%95%B0%E9%99%84%E5%8A%A0%E5%88%B0%E4%B8%BB%E6%9C%BA%E5%90%8D.png)
我最近自定义了终端中的提示符,使其更像 parrot os 中的提示符,我非常喜欢它。我读过文档我多次尝试如何在 shell 提示符中使用标记/变量,有一段时间我已经完全按照我想要的方式做到了,就像这种格式:
┌─[user@hostname]-[~/current/directory]
└─╼>
但最近提示在主机名后面添加了一个带有破折号的神秘整数,如下所示:
┌─[user@hostname-18]-[~/current/directory]
└─╼>
它从 17 开始,然后增加到 18。现在它几乎一直保持在 18,除非我打开另一个终端实例,在这种情况下它会跳转到 26。有人知道这个数字表示什么或为什么它出现在这里吗?我已检查以确保我没有任何其他打开的终端/shell/模拟器。这是我用来自定义提示的 .zshrc 文件中的代码:
unsetopt PROMPT_SP
PROMPT="┌─[%n@%m]-[%~]"$'\n'"└─╼> "
我该如何禁用这个看似随机的数字?我不知道它表示什么。
答案1
听起来这个数字实际上是您的主机名。运行hostname
或uname -n
检查。
苹果系统将会这样做当它检测到 LAN 上的名称冲突时 - 即它发现有另一台主机响应 Bonjour (mDNS) 查询hostname.local
。(它也可能是运行 Avahi 的 Linux 主机。)
如果数字无限增加,这可能意味着 macOS 即将达到本身通过另一个接口回环。(例如,它通过 Wi-Fi 发出查询,并通过有线以太网接收查询;它通过以太网响应,答复通过 Wi-Fi 传回,让它认为找到了另一个设备。)