在bashrc中的$MSYSTEM变量

5

注意

我正在使用Windows 7操作系统。在安装了msysgitGithub for Windows之后,我发现可以从文件夹中调用git bash。我打开终端并想要做的第一件事是改变它在控制台中的显示方式。

下面是echo $PS1命令的输出结果:

\[\033]0;$MSYSTEM:\w\007 \033[32m\]\u@\h \[\033[33m\w$(__git_ps1)\033[0m\] $ 

我一直在修改我的bash的PS1,已经知道那里的大部分内容。但是我从来没有见过$MSYSTEM

谷歌的结果除了有一些关于使用它设置$MSYSTEM=MINGW32的结果外,什么都没有。

那么MSYSTEM变量是做什么用的呢?此外,当我创建一个文件.bashrc并将这行放在那里时;终端现在显示我的用户名之前有一个空格。这是因为在这个段落中有一个空格\007 \033,但之前没有。这是使用自定义.bashrc和不使用时的截图:

没有<code>bashrc</code>

没有bashrc

有<code>.bashrc</code>

bashrc

我知道为什么我的自定义终端没有换行符;但问题是:

  • $MSYSTEM是什么?
  • 为什么第一个空格在第一种情况下丢失了?
1个回答

5
它将窗口标题设置为“MSYSTEM”变量的值。关于空格,看起来您弄错了最后的换行符,请仔细注意。
export PS1='\[\033]0;$MSYSTEM:\w\007
\033[32m\]\u@\h \[\033[33m\w\033[0m\]
$ '

在上面的变量中,每次开始一行时都要插入一个文字换行符到PS1中。

如何更改xterm的标题


而前导空格呢? - hjpotter92
但为什么第一张截图中缺失,而第二张中存在呢? - hjpotter92

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接