小编ole*_*ksa的帖子

PowerShell 对 env:Temp 使用简短的 8.3 形式

请帮我处理 PowerShell 环境变量。

我了解到 PowerShell 具有访问系统环境变量值的特殊语法。所以我试图执行:

$env:Temp
Run Code Online (Sandbox Code Playgroud)

在 Windows 10 上的 PowerShell 6.2.4 控制台中。输出很奇怪:

C:\Users\OD42B~1.BOR\AppData\Local\Temp
Run Code Online (Sandbox Code Playgroud)

它将我的 Windows 用户名缩短为 8.3 形式。问题是我无法使用该cd $env:temp命令,它显示以下错误:

cd : An object at the specified path C:\Users\OD42B~1.BOR does not exist.
Run Code Online (Sandbox Code Playgroud)

但是我可以cd %temp%cmd终端上做。

我试过 Windows PowerShell 应用程序 ( %SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe) 但cd $env:Temp也不起作用。

我已经检查了环境变量配置选项(系统属性\环境变量),TEMP并且TMP变量和变量都使用长格式的配置文件文件夹名称显示,例如c:\users\o.borolongprofilename\AppData\Local\Temp.

如何cd $env:Temp在 PowerShell 中使用非 8.3 配置文件名称?

UPD

  • PowerShellget-childitem env:Temp输出是C:\Users\OD42B~1.BOR\AppData\Local\Temp.

  • Cmdecho %temp%输出是相同的C:\Users\OD42B~1.BOR\AppData\Local\Temp(但 …

windows powershell environment-variables

7
推荐指数
1
解决办法
730
查看次数