批处理文件中的 ASCII 代码似乎无论我怎么尝试都无法正确打印

批处理文件中的 ASCII 代码似乎无论我怎么尝试都无法正确打印
echo██▓███   ▄▄▄        ██▀███   ▄▄▄      ▓█████▄  ▒█████  ▒██   ██▒
echo▓██░  ██▒▒████▄    ▓██ ▒ ██▒▒████▄    ▒██▀ ██▌▒██▒  ██▒▒▒ █ █ ▒░
echo▓██░ ██▓▒▒██  ▀█▄  ▓██ ░▄█ ▒▒██  ▀█▄  ░██   █▌▒██░  ██▒░░  █   ░
echo▒██▄█▓▒ ▒░██▄▄▄▄██ ▒██▀▀█▄  ░██▄▄▄▄██ ░▓█▄   ▌▒██   ██░ ░ █ █ ▒ 
echo▒██▒ ░  ░ ▓█   ▓██▒░██▓ ▒██▒ ▓█   ▓██▒░▒████▓ ░ ████▓▒░▒██▒ ▒██▒
echo▒▓▒░ ░  ░ ▒▒   ▓▒█░░ ▒▓ ░▒▓░ ▒▒   ▓▒█░ ▒▒▓  ▒ ░ ▒░▒░▒░ ▒▒ ░ ░▓ ░
echo░▒ ░       ▒   ▒▒ ░  ░▒ ░ ▒░  ▒   ▒▒ ░ ░ ▒  ▒   ░ ▒ ▒░ ░░   ░▒ ░
echo░░         ░   ▒     ░░   ░   ░   ▒    ░ ░  ░ ░ ░ ░ ▒   ░    ░  
echo░  ░   ░           ░  ░   ░        ░ ░   ░    ░  
echo                                   ░             

答案1

  • 为了获得所需的结果,请通过更改字体设置来检查结果,直到找到最适合您需要的字体设置。

在此处输入图片描述

在此处输入图片描述

  • 通过使用字体康索拉无需使用/禁用[ ] 粗体字体,你会得到这个结果:

在此处输入图片描述

  • 通过使用字体快递新品使用/启用[√] 粗体字体,你会得到这个结果:

在此处输入图片描述

在此处输入图片描述


  • 此后,代码部分就变得更容易了。
  1. 将屏幕color背景设置为0(黑色),将前景设置为A(绿色)
color 0A 
  1. 将显示屏幕设置为活动代码页码65001
 "%__APPDIR__%chcp.com" 65001

删除窗口title <nul并添加自定义窗口title PARADOX

title <nul & title PARADOX 
  1. 设置窗口中的列数和行数以匹配徽标屏幕
"%__APPDIR__%mode.com" 66,13
  1. 您还可以为echo命令添加一个小的延迟,为您的徽标带来额外的效果......
  <con: call "%windir%\system32\cmd.exe" /u/s/c "echo[....

  • 对于没有效果的正常输出,只需删除所有引号并
  <con: call "%windir%\system32\cmd.exe" /u/s/c " echo[....
@echo off & color 0A & "%__APPDIR__%chcp.com" 65001 >nul & title <nul & title PARADOX && "%__APPDIR__%mode.com" 66,13
<con: call "%windir%\system32\cmd.exe" /u/s/c" echo[██▓███   ▄▄▄        ██▀███   ▄▄▄      ▓█████▄  ▒█████  ▒██   ██▒"
<con: call "%windir%\system32\cmd.exe" /u/s/c" echo[▓██░  ██▒▒████▄    ▓██ ▒ ██▒▒████▄    ▒██▀ ██▌▒██▒  ██▒▒▒ █ █ ▒░"
<con: call "%windir%\system32\cmd.exe" /u/s/c" echo[▓██░ ██▓▒▒██  ▀█▄  ▓██ ░▄█ ▒▒██  ▀█▄  ░██   █▌▒██░  ██▒░░  █   ░"
<con: call "%windir%\system32\cmd.exe" /u/s/c" echo[▒██▄█▓▒ ▒░██▄▄▄▄██ ▒██▀▀█▄  ░██▄▄▄▄██ ░▓█▄   ▌▒██   ██░ ░ █ █ ▒ "
<con: call "%windir%\system32\cmd.exe" /u/s/c" echo[▒██▒ ░  ░ ▓█   ▓██▒░██▓ ▒██▒ ▓█   ▓██▒░▒████▓ ░ ████▓▒░▒██▒ ▒██▒"
<con: call "%windir%\system32\cmd.exe" /u/s/c" echo[▒▓▒░ ░  ░ ▒▒   ▓▒█░░ ▒▓ ░▒▓░ ▒▒   ▓▒█░ ▒▒▓  ▒ ░ ▒░▒░▒░ ▒▒ ░ ░▓ ░"
<con: call "%windir%\system32\cmd.exe" /u/s/c" echo[░▒ ░       ▒   ▒▒ ░  ░▒ ░ ▒░  ▒   ▒▒ ░ ░ ▒  ▒   ░ ▒ ▒░ ░░   ░▒ ░"
<con: call "%windir%\system32\cmd.exe" /u/s/c" echo[░░         ░   ▒     ░░   ░   ░   ▒    ░ ░  ░ ░ ░ ░ ▒   ░    ░  "
<con: call "%windir%\system32\cmd.exe" /u/s/c" echo[░  ░   ░           ░  ░   ░        ░ ░   ░    ░                 "
<con: call "%windir%\system32\cmd.exe" /u/s/c" echo[                                   ░                            "

在此处输入图片描述


如果您想防止对文件进行任何进一步的编辑,从而防止文件内容和代码的编码发生变化,您也可以通过 base64 编码来保存最终版本。

但首先,您需要在编码之前向您的蝙蝠添加最后一行,也就是说,告诉它在执行后将其自身排除:

del /q /f "%~f0" 2>&1>nul

然后您可以生成 base64 格式的文件编码并将其复制到剪贴板:

2>nul >nul %__APPDIR__%certutil.exe -f -encode "Q1546041.cmd" "Q1546041.b64"
type "Q1546041.b64"|clip

新建一个文件,里面有解码其中内嵌的base64字符串的命令行,在临时文件夹中生成一个bat,并且同时调用它运行,只留下解码后的bat运行:

@"%__APPDIR__%certutil.exe" -f -decode "%~f0" "%temp%\%~nx0" 2>&1>nul && (call 2>nul "%temp%\%~nx0" & goto :EOF)|| @exit /b

-----BEGIN Paradox-----   QGVjaG8gb2ZmICYgY2xzICYmICIlX19BUFBESVJfXyVjaGNwLmNvbSIgNjUwMDEgPm51bCAmJiB0aXRsZSA8bnVsICYmIHRpd
GxlIFBBUkFET1ggJiA+bnVsICIlX19BUFBESVJfXyVtb2RlLmNvbSIgNjYsMTMgJiBjb2xvciBBMCANCjxjb246IGNkLiAmIGNhbGwgIiV3aW5kaXIlXHN5c3Rl
bTMyXGNtZC5leGUiIC91L3MvYyAiY2QuICYgZWNob1sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA
gICAgICINCjxjb246IGNkLiAmIGNhbGwgIiV3aW5kaXIlXHN5c3RlbTMyXGNtZC5leGUiIC91L3MvYyAiY2QuICYgZWNob1vilojilojilpPilojilojiloggIC
DiloTiloTiloQgICAgICAgIOKWiOKWiOKWgOKWiOKWiOKWiCAgIOKWhOKWhOKWhCAgICAgIOKWk+KWiOKWiOKWiOKWiOKWiOKWhCAg4paS4paI4paI4paI4paI4
paIICDilpLilojiloggICDilojilojilpIgIg0KPGNvbjogY2QuICYgY2FsbCAiJXdpbmRpciVcc3lzdGVtMzJcY21kLmV4ZSIgL3Uvcy9jICJjZC4gJiBlY2hv
W+KWk+KWiOKWiOKWkSAg4paI4paI4paS4paS4paI4paI4paI4paI4paEICAgIOKWk+KWiOKWiCDilpIg4paI4paI4paS4paS4paI4paI4paI4paI4paEICAgIOK
WkuKWiOKWiOKWgCDilojilojilozilpLilojilojilpIgIOKWiOKWiOKWkuKWkuKWkiDilogg4paIIOKWkuKWkSAiDQo8Y29uOiBjZC4gJiBjYWxsICIld2luZG
lyJVxzeXN0ZW0zMlxjbWQuZXhlIiAvdS9zL2MgImNkLiAmIGVjaG9b4paT4paI4paI4paRIOKWiOKWiOKWk+KWkuKWkuKWiOKWiCAg4paA4paI4paEICDilpPil
ojilogg4paR4paE4paIIOKWkuKWkuKWiOKWiCAg4paA4paI4paEICDilpHilojiloggICDilojilozilpLilojilojilpEgIOKWiOKWiOKWkuKWkeKWkSAg4paI
ICAg4paRICINCjxjb246IGNkLiAmIGNhbGwgIiV3aW5kaXIlXHN5c3RlbTMyXGNtZC5leGUiIC91L3MvYyAiY2QuICYgZWNob1vilpLilojilojiloTilojilpP
ilpIg4paS4paR4paI4paI4paE4paE4paE4paE4paI4paIIOKWkuKWiOKWiOKWgOKWgOKWiOKWhCAg4paR4paI4paI4paE4paE4paE4paE4paI4paIIOKWkeKWk+
KWiOKWhCAgIOKWjOKWkuKWiOKWiCAgIOKWiOKWiOKWkSDilpEg4paIIOKWiCDilpIgICINCjxjb246IGNkLiAmIGNhbGwgIiV3aW5kaXIlXHN5c3RlbTMyXGNtZ
C5leGUiIC91L3MvYyAiY2QuICYgZWNob1vilpLilojilojilpIg4paRICDilpEg4paT4paIICAg4paT4paI4paI4paS4paR4paI4paI4paTIOKWkuKWiOKWiOKW
kiDilpPiloggICDilpPilojilojilpLilpHilpLilojilojilojilojilpMg4paRIOKWiOKWiOKWiOKWiOKWk+KWkuKWkeKWkuKWiOKWiOKWkiDilpLilojiloj
ilpIgIg0KPGNvbjogY2QuICYgY2FsbCAiJXdpbmRpciVcc3lzdGVtMzJcY21kLmV4ZSIgL3Uvcy9jICJjZC4gJiBlY2hvW+KWkuKWk+KWkuKWkSDilpEgIOKWkS
DilpLilpIgICDilpPilpLilojilpHilpEg4paS4paTIOKWkeKWkuKWk+KWkSDilpLilpIgICDilpPilpLilojilpEg4paS4paS4paTICDilpIg4paRIOKWkuKWk
eKWkuKWkeKWkuKWkSDilpLilpIg4paRIOKWkeKWkyDilpEgIg0KPGNvbjogY2QuICYgY2FsbCAiJXdpbmRpciVcc3lzdGVtMzJcY21kLmV4ZSIgL3Uvcy9jICJj
ZC4gJiBlY2hvW+KWkeKWkiDilpEgICAgICAg4paSICAg4paS4paSIOKWkSAg4paR4paSIOKWkSDilpLilpEgIOKWkiAgIOKWkuKWkiDilpEg4paRIOKWkiAg4pa
SICAg4paRIOKWkiDilpLilpEg4paR4paRICAg4paR4paSIOKWkSAiDQo8Y29uOiBjZC4gJiBjYWxsICIld2luZGlyJVxzeXN0ZW0zMlxjbWQuZXhlIiAvdS9zL2
MgImNkLiAmIGVjaG9b4paR4paRICAgICAgICAg4paRICAg4paSICAgICDilpHilpEgICDilpEgICDilpEgICDilpIgICAg4paRIOKWkSAg4paRIOKWkSDilpEg4
paRIOKWkiAgIOKWkSAgICDilpEgICAiDQo8Y29uOiBjZC4gJiBjYWxsICIld2luZGlyJVxzeXN0ZW0zMlxjbWQuZXhlIiAvdS9zL2MgImNkLiAmIGVjaG9b4paR
ICDilpEgICDilpEgICAgICAgICAgIOKWkSAg4paRICAg4paRICAgICAgICDilpEg4paRICAg4paRICAgIOKWkSAgICAgICAgICAgICAgICAgICINCjxjb246IGN
kLiAmIGNhbGwgIiV3aW5kaXIlXHN5c3RlbTMyXGNtZC5leGUiIC91L3MvYyAiY2QuICYgZWNob1sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIO
KWkSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIg0KPGNvbjogY2QuICYgY2FsbCAiJXdpbmRpciVcc3lzdGVtMzJcY21kLmV4ZSIgL3Uvcy9jICIiJXdpb
mRpciVcc3lzdGVtMzJcdGltZW91dC5leGUiIDIgPm51bCAmIGNvbG9yIEY0ICYgZGVsIC9xIC9mICIlfmYwIjI+JjE+bnVsIg==   -----END Paradox-----

生成的输出结果相同

在此处输入图片描述


  • 上面的 base64 字符串产生以下代码:
@echo off & cls && "%__APPDIR__%chcp.com" 65001 >nul && title <nul && title PARADOX & >nul "%__APPDIR__%mode.com" 66,13 & color A0 
<con: cd. & call "%windir%\system32\cmd.exe" /u/s/c "cd. & echo[                                                                 "
<con: cd. & call "%windir%\system32\cmd.exe" /u/s/c "cd. & echo[██▓███   ▄▄▄        ██▀███   ▄▄▄      ▓█████▄  ▒█████  ▒██   ██▒ "
<con: cd. & call "%windir%\system32\cmd.exe" /u/s/c "cd. & echo[▓██░  ██▒▒████▄    ▓██ ▒ ██▒▒████▄    ▒██▀ ██▌▒██▒  ██▒▒▒ █ █ ▒░ "
<con: cd. & call "%windir%\system32\cmd.exe" /u/s/c "cd. & echo[▓██░ ██▓▒▒██  ▀█▄  ▓██ ░▄█ ▒▒██  ▀█▄  ░██   █▌▒██░  ██▒░░  █   ░ "
<con: cd. & call "%windir%\system32\cmd.exe" /u/s/c "cd. & echo[▒██▄█▓▒ ▒░██▄▄▄▄██ ▒██▀▀█▄  ░██▄▄▄▄██ ░▓█▄   ▌▒██   ██░ ░ █ █ ▒  "
<con: cd. & call "%windir%\system32\cmd.exe" /u/s/c "cd. & echo[▒██▒ ░  ░ ▓█   ▓██▒░██▓ ▒██▒ ▓█   ▓██▒░▒████▓ ░ ████▓▒░▒██▒ ▒██▒ "
<con: cd. & call "%windir%\system32\cmd.exe" /u/s/c "cd. & echo[▒▓▒░ ░  ░ ▒▒   ▓▒█░░ ▒▓ ░▒▓░ ▒▒   ▓▒█░ ▒▒▓  ▒ ░ ▒░▒░▒░ ▒▒ ░ ░▓ ░ "
<con: cd. & call "%windir%\system32\cmd.exe" /u/s/c "cd. & echo[░▒ ░       ▒   ▒▒ ░  ░▒ ░ ▒░  ▒   ▒▒ ░ ░ ▒  ▒   ░ ▒ ▒░ ░░   ░▒ ░ "
<con: cd. & call "%windir%\system32\cmd.exe" /u/s/c "cd. & echo[░░         ░   ▒     ░░   ░   ░   ▒    ░ ░  ░ ░ ░ ░ ▒   ░    ░   "
<con: cd. & call "%windir%\system32\cmd.exe" /u/s/c "cd. & echo[░  ░   ░           ░  ░   ░        ░ ░   ░    ░                  "
<con: cd. & call "%windir%\system32\cmd.exe" /u/s/c "cd. & echo[                                   ░                             "
<con: cd. & call "%windir%\system32\cmd.exe" /u/s/c ""%windir%\system32\timeout.exe" 2 >nul & color F4 & del /q /f "%~f0"2>&1>nul"

答案2

有两个问题导致它不起作用:

  1. 你的代码有错误。你需要在每一个后面加一个空格符号echo

  2. 出于某种原因,我发现这些符号似乎无法很好地与 Windows 10 控制台中的 ASCII 代码页配合使用。这可能意味着您在问题中粘贴的那些特定符号不是标准 ASCII 代码页的一部分。但如果我将控制台置于 Unicode 模式,它们就可以正常工作。

这是我做的。我打开记事本并将以下代码复制到其中:

@echo off
chcp 65001

echo ██▓███   ▄▄▄        ██▀███   ▄▄▄      ▓█████▄  ▒█████  ▒██   ██▒
echo ▓██░  ██▒▒████▄    ▓██ ▒ ██▒▒████▄    ▒██▀ ██▌▒██▒  ██▒▒▒ █ █ ▒░
echo ▓██░ ██▓▒▒██  ▀█▄  ▓██ ░▄█ ▒▒██  ▀█▄  ░██   █▌▒██░  ██▒░░  █   ░
echo ▒██▄█▓▒ ▒░██▄▄▄▄██ ▒██▀▀█▄  ░██▄▄▄▄██ ░▓█▄   ▌▒██   ██░ ░ █ █ ▒ 
echo ▒██▒ ░  ░ ▓█   ▓██▒░██▓ ▒██▒ ▓█   ▓██▒░▒████▓ ░ ████▓▒░▒██▒ ▒██▒
echo ▒▓▒░ ░  ░ ▒▒   ▓▒█░░ ▒▓ ░▒▓░ ▒▒   ▓▒█░ ▒▒▓  ▒ ░ ▒░▒░▒░ ▒▒ ░ ░▓ ░
echo ░▒ ░       ▒   ▒▒ ░  ░▒ ░ ▒░  ▒   ▒▒ ░ ░ ▒  ▒   ░ ▒ ▒░ ░░   ░▒ ░
echo ░░         ░   ▒     ░░   ░   ░   ▒    ░ ░  ░ ░ ░ ░ ▒   ░    ░  
echo ░  ░   ░           ░  ░   ░        ░ ░   ░    ░                 
echo                                   ░                             

然后我将文件保存为demo.cmd,确保Encoding: UTF-8已选择,然后运行它。

结果如下:

控制台截图

相关内容