在 Windows 终端内使用 git-posh 或/和 oh-my-posh 以及命令提示符(cmd,而不是 Powershell)

Che*_*era 3 windows powershell cmd git-branch windows-terminal

最近切换到新的 Windows 终端,经过几个小时的互联网搜索后,我找不到任何有用的东西,我想要的就是在新的 Windows 终端中设置 cmd 以显示 git 分支,就像 powershell 可以实现的那样。

例如这样在此输入图像描述

我对 cmd 非常满意,尤其是它能够使用额外的 linux 命令,并且不想仅仅因为 git 分支的良好显示而切换到 powershell。是一个源代码,其中对 powershell 的所有内容都有很好的解释,我只想对 CMD 做同样的事情。

提前致谢

mkl*_*nt0 5

为了使用Oh My Poshcmd.exe旧版 Windows shell进行 shell 提示符自定义(引用自docs、 tab cmd,添加了重点):

对于自定义提示,Windows CMD不提供开箱即用的支持。然而,有一种方法可以使用Clink来完成此操作,同时增强您的 cmd 体验。按照安装说明进行操作并确保选择自动启动。

将 Oh My Posh 与 Clink 集成很简单:oh-my-posh.lua在 Clink 脚本目录中创建一个名为的新文件(clink info在 cmd 中运行以查找该文件的位置)。

oh-my-posh.lua load(io.popen('oh-my-posh init cmd'):read("*a"))()

添加后,重新启动 cmd 以使更改生效。

正如您后来发现的,GitHub 上的这个问题提供了关于为什么cmd.exe不可能提供本机支持(尽管 Oh My Posh 通常与 shell 无关)以及为什么需要第三方软件才能使其工作的背景信息。


至于您更喜欢的评论cmd.exe

我对 cmd 非常满意

从已习惯的 shell 迁移到新的 shell 无疑是​​一个痛苦的过渡,但在这种情况下非常值得考虑:

虽然 PowerShell 并非没有怪癖,但它在几乎所有方面都远远优于cmd.exe,并且使您能够完成在cmd.exe

它能够使用额外的 Linux 命令

从 Windows 端调用的 Linux (WSL) 命令都是通过可执行文件(特别是wsl.exebash.exe)来调节的,您同样可以从 PowerShell调用它们。