PROMPT 的环境变量?
Environmental Variable for PROMPT?
我想让我的命令提示符更像 Unix。我创建了一个 PROMPT 系统变量,设置为 PC-name >
但我希望它包括我所在的当前文件夹,而不是整个路径。就像我将 PROMPT 设置为 pwd 一样,它会给出整个路径,但我只想在提示符下显示我当前所在的目录,这样我就知道我在哪个文件夹中。有什么实现方法吗?
例如提示将是 PC-name stuff >
如果我在 stuff 文件夹中
C:\Users\Name\folder\stuff
为此设置一个变量?并以某种方式更新环境变量?:
for %%* in (.) do @echo %%~n*
不幸的是,默认的 windows cmd 命令 shell 这是不可能的(这个问题可能属于 Super User ).
您可以键入 'prompt /?' 来查看您的选项,并且您可以通过 %envvar% 在提示中放置环境变量,但是没有为您设置的 "leaf" 环境变量。我不知道有什么方法可以通过标准 'cd' 命令设置一个(尽管如果你愿意使用非标准的更改目录命令,你可能会连接一些东西。)
您可以使用替代方法 shell:
- Cygwin shell 在使用 Windows 的 *nix 用户中很受欢迎,因为它提供了传统的 bash(或备用)shell 支持和命令.
- 内置的 Powershell,它具有更可编程的提示(但不是很 *nix-ish)
例如
function prompt {
$p = Split-Path -leaf -path (Get-Location);
$c = $env:computername;
"$c $p> "
}
可以在你的power里面设置shell profile:
%userprofile%\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
我想让我的命令提示符更像 Unix。我创建了一个 PROMPT 系统变量,设置为 PC-name > 但我希望它包括我所在的当前文件夹,而不是整个路径。就像我将 PROMPT 设置为 pwd 一样,它会给出整个路径,但我只想在提示符下显示我当前所在的目录,这样我就知道我在哪个文件夹中。有什么实现方法吗?
例如提示将是 PC-name stuff > 如果我在 stuff 文件夹中 C:\Users\Name\folder\stuff
为此设置一个变量?并以某种方式更新环境变量?:
for %%* in (.) do @echo %%~n*
不幸的是,默认的 windows cmd 命令 shell 这是不可能的(这个问题可能属于 Super User ).
您可以键入 'prompt /?' 来查看您的选项,并且您可以通过 %envvar% 在提示中放置环境变量,但是没有为您设置的 "leaf" 环境变量。我不知道有什么方法可以通过标准 'cd' 命令设置一个(尽管如果你愿意使用非标准的更改目录命令,你可能会连接一些东西。)
您可以使用替代方法 shell:
- Cygwin shell 在使用 Windows 的 *nix 用户中很受欢迎,因为它提供了传统的 bash(或备用)shell 支持和命令.
- 内置的 Powershell,它具有更可编程的提示(但不是很 *nix-ish)
例如
function prompt {
$p = Split-Path -leaf -path (Get-Location);
$c = $env:computername;
"$c $p> "
}
可以在你的power里面设置shell profile:
%userprofile%\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1