在日本机器上运行powershell脚本时出现问题,\n将变成¥;

在日本机器上运行powershell脚本时出现问题,\n将变成¥;,powershell,Powershell,鉴于我对PowerShell的了解仍在进行中,请接受任何建议/答案 所以,在我工作的地方,我所在的公司有许多日本机器需要注册到Intune。但是,我们正在运行的脚本在他们的机器上不起作用,导致\符号变为¥符号 脚本中存在问题的部分是: New-Item -ItemType Directory -Force -Path C:\HWID\ Install-Script -Name Get-WindowsAutoPilotInfo CD “C:\Program Files\WindowsPowerSh

鉴于我对PowerShell的了解仍在进行中,请接受任何建议/答案

所以,在我工作的地方,我所在的公司有许多日本机器需要注册到Intune。但是,我们正在运行的脚本在他们的机器上不起作用,导致\符号变为¥符号

脚本中存在问题的部分是:

New-Item -ItemType Directory -Force -Path C:\HWID\
Install-Script -Name Get-WindowsAutoPilotInfo
CD “C:\Program Files\WindowsPowerShell\Scripts\”
.\Get-WindowsAutoPilotInfo.ps1 -OutputFile C:\HWID\AutoPilotHWID.csv
因此,当然,简单的解决办法是暂时改变美国的语言设置,但这当然不符合管理层的要求

在我的PowerShell脚本中是否可以做些什么来隐藏此问题并确保它按预期使用\符号

我尝试了一个向我建议的解决方法,并运行了以下程序,结果是它将输出转换为Unicode十进制:92

PS C:\WINDOWS\system32> CD "C:$(0x005C)Program Files$(0x005C)WindowsPowerShell$(0x005C)Scripts$(0x005C)"

CD : Cannot find path 'C:\WINDOWS\system32\92Program Files92WindowsPowerShell92Scripts92' because it does not exist.
At line:1 char:1
+ CD "C:$(0x005C)Program Files$(0x005C)WindowsPowerShell$(0x005C)Script ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (C:\WINDOWS\syst...hell92Scripts92:String) [Set-Location], ItemNotFoundException
    + FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.SetLocationCommand
所以我愿意接受任何其他的想法来解决这个问题


谢谢,修复方法是使用正斜杠而不是反斜杠

如果将“\”更改为“/”,该怎么办?可能会有帮助。rokumaru,谢谢你的帮助:)Alex或@rokumaru,我鼓励你写下解决方法作为答案,但知道为什么需要它也很好,即实际问题是什么。链接到superuser.com的帖子表明,这可能只是一个显示问题,而不是显示问题。Windows日语代码页(/s)将0x5C位置的反斜杠替换为日元。但根据我所做的研究,这只适用于视觉。从功能上讲,它的行为仍应类似于反斜杠。但当我尝试使用反斜杠运行脚本时,它破坏了脚本。将其更改为正斜杠可以解决此问题。