for %f in (*.txt) do chcp 65001 & type "%f" > "%f.tmp" & move /Y "%f.tmp" "%f"
for %f in (*.txt)
:对于当前目录下的所有txt文件进行操作。chcp 65001
:设置当前控制台编码为UTF-8,以确保在 cmd 下正确处理 UTF-8 编码的字符。type "%f" > "%f.tmp"
:将每个 txt 文件中的内容读入并转换为 UTF-8 编码,并输出到一个临时文件中。move /Y "%f.tmp" "%f"
:将生成的临时文件移动回原始文件名,从而覆盖原来的 ANSI 编码的 txt 文件。/Y
标志可确保在不提示确认的情况下覆盖现有的文件。
注意,在这个命令中,如果您想复制到另一个目录,则需要更改最后一个命令中的目标路径。