如何在Windows中更改Git终端的标题?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在Windows中更改Git终端的标题?相关的知识,希望对你有一定的参考价值。
我在Windows 10中工作,通常我最多打开5个CMD窗口。我这样做是因为我需要使用不同的数据运行相同的应用程序,并且如果抛出任何异常则继续监视。
我更改窗口的标题(使用title
命令)并使用数字而不是默认文本,以便轻松识别我正在使用的窗口,并能够使用Alt+Tab
(an example of how I work with my CMD windows)识别和更改它们
最近我开始使用Git,我真的很喜欢Windows的Git Bash终端。我想使用Git Bash终端,就像我使用CMD窗口一样,但我找不到任何方法来更改窗口标题。我搜索了一下,找到了these instructions和其他一些(我不能粘贴因为我不允许发布超过两个链接),但它似乎只能通过设置不同的默认标题。我想随时将窗口标题更改为我选择的任何自定义文本。
这可能吗?是否有类似title
的命令可用于Git Bash?
你和this link在正确的轨道上
如果您稍微修改git-prompt.sh
脚本(对我来说,这位于c:Program Files (x86)Gitetcprofile.dgit-prompt.sh
中),您可以将标题设置为您想要的任何内容。
注意:您需要以管理员身份运行Notepad ++或类似程序才能回写此目录。
首先,保存git-prompt.sh
的备份(当然,如git-prompt.backup.sh
),然后修改git-prompt.sh
的开头,如下所示:
[编辑:修复了从test
到-n
的第一个-z
标志以检查空的$ GITTITLEPREFIX变量而不是非空变量并添加缺少的'fi']
if test -z "$GITTITLEPREFIX" # if not empty
then
GITTITLEPREFIX="Git-Bash => " # prefix that will have current pwd appended after it
fi
if test -f ~/.config/git/git-prompt.sh
then
. ~/.config/git/git-prompt.sh
else
if test -n "$GITTITLE"
then ##### Set window title directly to GITTITLE if not empty
PS1='[ 33]0;$GITTITLE 07]'
else ##### Set window title to GITTITLE PREFIX plus the PWD
PS1='[ 33]0;$GITTITLEPREFIX${PWD//]^[:ascii:]]/?} 07]'
fi
fi
###### Leave the rest of the file the same
PS1="$PS1"'
'
PS1="$PS1"'[ 33[32m]'
###### Etc.
这将首先检查GITTITLEPREFIX是否为空,如果不是,则将其设置为“Git-Bash =>”,类似于链接文章。这将在其后附加当前路径,因此如果您想要“1:$ PWD”,则将GITTITLEPREFIX设置为“1:”,如下所示:
GITTITLEPREFIX="1 : "
否则,你可以将GITTITLE设置为任何非空值,然后整个标题将完全设置为GITTITLE的内容(没有附加PWD),所以如果你只想要“1”,请使用:
GITTITLE="1"
然后运行脚本。凭借我的道路,我这样做了:
. "/c/Program Files (x86)/Git/etc/profile.d/git-prompt.sh"
标题应该改变。当然,您可以对此进行别名或在路径中的位置创建单独的脚本,因此运行它更简单,标题可能只是一个参数。我会把它作为读者的练习......
这个帖子已经有几个月了。但我认为另一种选择会有所帮助
您可以在用户配置文件文件夹中将以下行添加到.bashrc文件中
export TITLEPREFIX="Git Bash"
你希望Git bash成为你的标题前缀。这是用户特定的更改。因此,如果多个用户使用自己的登录计算机,则每个人都可以自定义自己的标题。
一个简单的选择是echo -ne "e]0;YOUR TITLE HEREa"
。
我解决了我的问题,对脚本进行了很少的修改。第一个,为了传递我想要的窗口名称,我添加了变量name=$1
并将其设置在title变量中:
name=$1
PS1='[ 33]0;$name 07]' # set window title
第二个,正如推荐的here,我评论了下一行:
#PS1="$PS1"'[ 33[35m]' # change to purple
#PS1="$PS1"'$MSYSTEM ' # show MSYSTEM
最终代码如下:
if test -f /etc/profile.d/git-sdk.sh
then
TITLEPREFIX=SDK-${MSYSTEM#MINGW}
else
TITLEPREFIX=$MSYSTEM
fi
name=$1
PS1='[ 33]0;$name 07]' # set window title
PS1="$PS1"'
' # new line
PS1="$PS1"'[ 33[32m]' # change to green
PS1="$PS1"'u@h ' # user@host<space>
#PS1="$PS1"'[ 33[35m]' # change to purple
#PS1="$PS1"'$MSYSTEM ' # show MSYSTEM
PS1="$PS1"'[ 33[33m]' # change to brownish yellow
PS1="$PS1"'w' # current working directory
if test -z "$WINELOADERNOEXEC"
then
GIT_EXEC_PATH="$(git --exec-path 2>/dev/null)"
COMPLETION_PATH="${GIT_EXEC_PATH%/libexec/git-core}"
COMPLETION_PATH="${COMPLETION_PATH%/lib/git-core}"
COMPLETION_PATH="$COMPLETION_PATH/share/git/completion"
if test -f "$COMPLETION_PATH/git-prompt.sh"
then
. "$COMPLETION_PATH/git-completion.bash"
. "$COMPLETION_PATH/git-prompt.sh"
PS1="$PS1"'[ 33[36m]' # change color to cyan
PS1="$PS1"'`__git_ps1`' # bash function
fi
fi
PS1="$PS1"'[ 33[0m]' # change color
PS1="$PS1"'
' # new line
PS1="$PS1"'$ ' # prompt: always $
MSYS2_PS1="$PS1" # for detection by MSYS2 SDK's bash.basrc
暂时我制作了一个脚本副本并将其粘贴在C:上,根据我的路径,每次我需要更改标题时都可以轻松执行它,如下所示:$ . /c/changename.sh
我还在学习脚本,所以我可以设置一个别名。正如@LightCC所说,“我会将其作为读者的练习......”
以上是关于如何在Windows中更改Git终端的标题?的主要内容,如果未能解决你的问题,请参考以下文章
如何在同一目录的 Windows 终端中打开一个新的 git-bash 选项卡?
如何通过设置环境变量的 Windows 终端启动 Git Bash?
如何在我的 Windows git-bash 终端上获得彩色输出?