PowerShell中如何合并USERDOMAIN与USERNAME两个变量为单个变量
实现方法
PowerShell访问系统环境变量使用$env:变量名的语法替代Batch里的%变量名%,你可以用以下几种方式实现相同效果:
方法1:直接字符串拼接(和Batch写法逻辑最接近)
双引号包裹的字符串支持自动变量扩展,直接写入两个环境变量即可:
$zFullUsername = "$env:USERDOMAIN\$env:USERNAME" Write-Output $zFullUsername
方法2:使用Join-Path拼接
如果你不想手动写反斜杠,也可以用专门处理路径拼接的Join-Path命令实现:
$zFullUsername = Join-Path $env:USERDOMAIN $env:USERNAME Write-Output $zFullUsername
方法3:直接获取完整用户名(更可靠)
如果不需要单独使用两个变量,可以直接调用.NET接口直接得到拼接好的域\用户名格式结果,避免环境变量被篡改带来的异常:
$zFullUsername = [System.Security.Principal.WindowsIdentity]::GetCurrent().Name Write-Output $zFullUsername
内容的提问来源于stack exchange,提问作者Boyd Fields
相关产品推荐
相关产品推荐

