在重定向文件中显示带重音的字符(> output.txt)

时间:2015-10-07 17:46:59

标签: windows batch-file cmd console-output

例如

mode con: cp>%tmp%\output.tmp
notepad %tmp%\output.tmp

显示:

Statut du p‚riph‚rique CON:
---------------------------
    Page de codesÿ:   850

而不是:

Statut du périphérique CON:
---------------------------
    Page de codes :   850

我还尝试使用chcp 650011252

你知道修复吗?

编辑:

我使用truetype Lucida字体,即使我type %tmp%\output.tmp它在控制台中显示正确的字符,但在任何文本编辑器中都没有。

我也尝试过:

cmd /U /C "chcp 65001>nul &mode con: cp>%tmp%\output.tmp"

cmd /A /C "chcp 65001>nul &mode con: cp>%tmp%\output.tmp"

没有成功

2 个答案:

答案 0 :(得分:4)

您可以使用cmd.exe的/ U开关输出Unicode字符。例如:

cmd /U /C dir > dirInUnicode.txt

但是,此开关仅适用于内部命令,因此您必须使用辅助文件才能转换mode命令的输出:

mode con: cp>%tmp%\output1.tmp
cmd /U /C type %tmp%\output1.tmp > %tmp%\output2.tmp

答案 1 :(得分:0)

使用PowerShell而不是DOS作为命令行提示符。它的作品完美无缺,具有特殊性。

C:> powershell
PS C:> mode con: cp > temp.txt
PS C:> notepad temp.txt