默认情况下,当您将命令的输出重定向到文件或将其传递到PowerShell中的其他内容时,编码为UTF-16,这是无用的.我想把它改成UTF-8.
它可以通过替换>foo.txt语法来逐个进行,| out-file foo.txt -encoding utf8但是每次都必须重复这是很尴尬的.
在PowerShell中设置内容的持久方法是将它们放入\Users\me\Documents\WindowsPowerShell\profile.ps1; 我已经验证这个文件确实是在启动时执行的.
有人说输出编码可以设置,$PSDefaultParameterValues = @{'Out-File:Encoding' = 'utf8'}但我已经尝试过,它没有任何效果.
https://blogs.msdn.microsoft.com/powershell/2006/12/11/outputencoding-to-the-rescue/谈到$OutputEncoding乍一看似乎应该是相关的,但后来谈到输出被编码在ASCII中,这不是实际发生的事情.
如何设置PowerShell使用UTF-8?
我正在使用一个小processconf.js工具configuration.json从多个.json文件构建一个文件.
这里是我使用的命令:
node processconf.js file1.json file2.json > configuration.json
Run Code Online (Sandbox Code Playgroud)
我正在使用cmd片刻,但今天我尝试使用Powershell并以某种方式从相同的文件和相同的命令我有不同的结果.
一个文件是33kb(cmd)另一个66kb(powershell),查看文件他们有完全相同的行,我找不到任何视觉差异,为什么会这样?