回声吐出奇怪的字符

时间:2019-02-14 13:16:51

标签: batch-file echo

我正试图批量制作一个加载屏幕,以便在批量超时时可以查看一些内容。当我在cmd中键入代码时,我刚刚打开它就可以了。但是编写批处理文件并启动它会给我以下结果:

代码:

timeout /t 1 /nobreak
cls
echo It's almost Done.
echo      Loading
echo ╔════════════════╗
echo ║▓░░░░░░░░░░░░░░░║
echo ╚════════════════╝

输出:

It's almost Done.
     Loading
ÔòöÔòÉÔòÉÔòÉÔòÉÔòÉÔòÉÔòÉÔòÉÔòÉÔòÉÔòÉÔòÉÔòÉÔòÉÔòÉÔòÉÔòù
ÔòæÔûôÔûæÔûæÔûæÔûæÔûæÔûæÔûæÔûæÔûæÔûæÔûæÔûæÔûæÔûæÔûæÔòæ
ÔòÜÔòÉÔòÉÔòÉÔòÉÔòÉÔòÉÔòÉÔòÉÔòÉÔòÉÔòÉÔòÉÔòÉÔòÉÔòÉÔòÉÔòØ

我不明白问题出在哪里。

为什么通过 WINDOWS + R 启动cmd而不是仅启动批处理文件时起作用,

3 个答案:

答案 0 :(得分:0)

如果更改代码页,则假设您的控制台字体支持这些字符,则可以显示这些字符。

将其添加到批次的顶部:

CHCP 65001 >nul

您的全部批次将是:

chcp 65001 >nul
timeout /t 1 /nobreak
cls
echo It's almost Done.
echo      Loading
echo ╔════════════════╗
echo ║▓░░░░░░░░░░░░░░░║
echo ╚════════════════╝

Results of batch

答案 1 :(得分:0)

要确保将Unicode字符保存到批处理文件中并确保其使用unicode字符正确运行批处理,请执行以下操作:

打开cmd.exe

复制下面的所有内容,并“右键单击” 并粘贴代码,一旦粘贴,请按 Enter

在执行此操作之前,请在最后将batch.cmd名称更改为您自己的脚本名称:

chcp 65001
(echo @echo off
 echo chcp 65001
 echo timeout /t 1 /nobreak
 echo cls
 echo echo It's almost Done.
 echo echo      Loading
 echo echo ╔════════════════╗
 echo echo ║▓░░░░░░░░░░░░░░░║
 echo echo ╚════════════════╝
)>batch.cmd

答案 2 :(得分:0)

或者您可以尝试执行此操作,从而假设用户使用了控制台字体等。

Timeout 1 /NoBreak
ClS
Echo It's almost Done.
Echo      Loading
Echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
Echo º²°°°°°°°°°°°°°°°º
Echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ