如何让PowerShell显示中文不乱码
故障描述:
这两天有个部门做了个Survey用来调查一些信息,由于对最后的结果报表有些特殊要求,不得不决定弃用SharePoint Survey自带的Export to spreadsheet功能,改用PowerShell导出结果。
过程中碰到个小麻烦,就是Survey结果中的中文字符不能正常显示,打印出来的都是问号。。
解决方法:
其实嘛一看就知道是encoding的问题,英语为默认语言的环境里,PowerShell默认的Encoding是AscII
最简单的方法就是改用PowerShell ISE,它可以显示非英语字符。在操作SharePoint数据的时候只要在启动ISE的时候运行一下下面的语句就可以,相比于Management Console方便很多。
Add-PSSnapin Microsoft.SharePoint.PowerShell |
另外一个解决方法是把Encoding改为UTF8,运行下面的语句就可以了。
$OutputEncoding = New-Object -typename System.Text.UTF8Encoding |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步