PROMPT的环境变量?

时间:2016-02-04 01:14:41

标签: windows unix system environment

我想让我的命令提示更像Unix。我做了一个PROMPT系统变量,设置为PC-name> 但我希望包含我当前的文件夹,而不是整个路径。就像我将PROMPT设置为pwd一样,它给出了整个路径,但我只想要目前我在目录中的提示,所以我知道我在哪个文件夹。有任何想法如何实现这个目标吗?

例如,提示将是PC名称的东西> 如果我在stuff文件夹中 C:\ Users \用户名称\文件夹\东西

为此设置变量?并以某种方式更新环境变量?:

for %%* in (.) do @echo %%~n*

1 个答案:

答案 0 :(得分:0)

不幸的是,这对于默认的Windows cmd 命令shell是不可能的(这个问题可能属于Super User)。

您可以输入'prompt /?'要查看您的选项,您可以通过%envvar%在提示中放置环境变量,但没有为您设置“leaf”env var。我不知道有什么方法可以通过标准的'cd'命令设置一个(虽然如果你愿意使用非标准的更改目录命令,你可能可以连接一些东西。)

您可以使用备用shell:

  • Cygwin shell在使用Windows的* nix用户中很受欢迎,因为它提供了传统的bash(或备用)shell支持和命令。
  • 内置的Powershell,它有一个更可编程的提示符(但不是非常* nix-ish)

e.g。

function prompt { 
    $p = Split-Path -leaf -path (Get-Location);
    $c = $env:computername;
    "$c $p> " 
}

可以在您的powershell配置文件中设置:

%userprofile%\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1