【问题标题】:byobu renames windows in ssh sessionbyobu 在 ssh 会话中重命名窗口
【发布时间】:2015-02-12 10:41:13
【问题描述】:

我使用ssh 连接到远程计算机并在远程计算机上启动byobu 会话。每当我在 byobu 窗口中更改目录时,窗口都会重命名为 username@remote-pc:~/.../.../...。当我使用F8 重命名窗口时,该名称将持续到下一个cd

如何防止这种情况发生?

【问题讨论】:

    标签: ssh byobu


    【解决方案1】:

    我在 Fedora 上遇到了同样的问题。

    在每个 bash 会话中,PROMPT_COMMAND 默认在 /etc/bashrc 中设置为 __vte_prompt_command

    man bash

    PROMPT_COMMAND
    If set, the value is executed as a command prior to issuing each primary prompt.
    

    __vte_prompt_command 定义在/etc/profile.d/vte.sh

    type __vte_prompt_command给了

    __vte_prompt_command is a function
    __vte_prompt_command () 
    { 
        local pwd='~';
        [ "$PWD" != "$HOME" ] && pwd=${PWD/#$HOME\//\~\/};
        printf "\033]0;%s@%s:%s\007%s" "${USER}" "${HOSTNAME%%.*}" "${pwd}" "$(__vte_osc7)"
    }
    

    为防止这种情况,您可以在 ~/.bashrc 中采购 /etc/bashrc 后添加 unset PROMPT_COMMAND

    您可能还希望仅在 byobu 会话中执行此操作,您可以为此测试 byobu 环境变量 (BYOBU_RUN_DIR?)

    【讨论】:

      【解决方案2】:

      此答案适用于 zsh 用户。

      我现在用 zsh 发生过两次这种情况。令人沮丧。在这里发帖,以便我可以在未来寻找解决方案(并希望能帮助任何其他迷失的灵魂)。

      ~/.zshrc你会发现

      # Uncomment the following line to disable auto-setting terminal title.                                                                                                          
      # DISABLE_AUTO_TITLE="true"
      

      取消注释 DISABLE_AUTO_TITLE="true" 使其看起来像

      # Uncomment the following line to disable auto-setting terminal title.                                                                                                          
      DISABLE_AUTO_TITLE="true"
      

      别担心,未来的我

      【讨论】:

      • 我知道这会派上用场
      【解决方案3】:

      在使用 tmux 时,您可以通过在~/.byobu/.tmux.conf 中添加以下内容来防止任何程序重命名窗口:

      set-option -g allow-rename off
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-02-05
        • 2023-03-27
        • 1970-01-01
        • 1970-01-01
        • 2022-07-01
        相关资源
        最近更新 更多