批处理对文本文件进行编码转换

iconv是linux下的编码转换工具, windows下的下载地址:

for /r .\ %i in (*.sql) do iconv.exe -f GBK -t UTF-8 %i > %~dpni_utf8.sql

释义:

for /r .\ %i in(*.sql) do

循环 .\ 目录下的所有*.sql文件, 分别处理每个文件, 文件变量 %i

iconv.exe -f GBK -t UTF-8 %i > %~dpni_utf8.sql

用iconv.exe命令做编码转换, -f GBK 指从GBK编码转换, – UTF-8指转换到UTF-8

a > b a和b分别是转换前后的文件名. 上面命令中 a为 %i, 即循环到的每个文件; b 为 %~dpni_utf8.sql, 这里 %….i 是循环到的变量, 可以根据需要做格式化, 中间的 ~dpn是格式化的格式:

d是盘符,
p是路径,
n是文件名(不含扩展名),
x是扩展名,
t是文件的修改时间
s是把文件和路径缩写成8.3格式
z是指文件大小(字节数)
f是指文件名