我想将某个有用的特殊字符放入剪贴板以便使用。因此,我使用一个简单的批处理脚本实现了此目的,如下所示:
@echo off
set /p char=<character.txt
echo %char%| clip
exit
包含character.txt
单个字符(pi),如下所示:
π
但是当我运行这个批处理脚本时,它会将其复制到剪贴板:
寧靜
为什么会发生这种情况?
我该如何正常复制这个角色?
有用的要点-
- 和批处理文件均
character.txt
采用 UTF-8 编码。 - 我使用 Notepad++ 文本编辑器。
- 当我运行 时
echo %var%> example.txt
,它会正常地将字符复制到文本文件中,但由于某种原因,它拒绝使用| clip
答案1
@echo off
for /f "delims= " %%d in ('
forFiles/c "cmd /c echo(0xE3"')do set "_pi=%%~d"
echo\ %_pi% on your screen and in your clipboard :
echo\ %_pi% in hexadecimal: 0xE3 | clip
使用您的实际情况在命令行中测试
chcp
:forfiles /c "cmd /c set/p "'=0xE3">nul| clip
您不需要编写文件来获取该字符,只需尝试使用forfiles
和定义所需的字符来输出代码:"cmd /c echo(0xE3"
获取十六进制
chcp
字符表:对于 chcp 437,十六进制
π == 0xE3
:
要检查系统中的所有 chcp,请使用以下命令:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage
或者,在命令行运行:
reg query "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage