2015-06-02 26 views
0

我們從PowerShell的這樣的運行lessc重定向內容到一個文件中的ASCII編碼

lessc -x style.less > style.min.css 

不幸的是,style.min.css文件是unicode而我們希望它是ascii。當從PowerShell將結果寫入文件時,我們如何強制編碼?

有趣的是,當我們從vanilla命令提示符運行相同的命令時,編碼是ascii

+0

「統一」 不是一個編碼。你得到什麼編碼?你有BOM嗎? – SLaks

+0

我得到一個BOM。我也只是閱讀[about_redirection文檔](https://technet.microsoft.com/en-us/library/hh847746.aspx),它說:「當您寫入文件時,重定向操作符使用Unicode編碼。 「所以,我接近一個解決方案。 –

+0

@SLaks出於好奇,當你說Unicode不是一種編碼時,你是什麼意思?爲什麼不? –

回答

2

作爲一個簡單的解決方法,指定輸出爲command-line parameter而不是重定向標準輸出:

lessc -x style.less style.min.css 
1

about_Redirection說,這大約PowerShell的重定向。

當您寫入文件時,重定向操作符使用Unicode編碼...要將內容重定向到非Unicode文件,請使用Out-File cmdlet及其Encoding參數。

Out-File作品:

lessc -x style.less | Out-File style.min.css -Encoding ascii 
相關問題