上海园区招商办公室
联系人:梁经理
联系电话:15000456391
欢迎来电咨询,竭诚为你服务!
带中文名称的文件传输到linux下面,往往会显示为乱码,这个是由于windows和linux的编码不同的原因
本文通过对文件名称重新编码解决乱码的问题
大概思路:
得到乱码显示的文件列表数组
使用gbk进行编码成字节码,再用utf8来查看,得到非乱码的文件列表数组
用得到的非乱码的文件名来替换乱码的文件,
通过以上步骤即可完成乱码文件名的修复
具体代码:
#!/usr/bin/env bash
#需要两个括号哦
files=($(ls))
#需要两个括号哦,用gbk的编码来显示utf8,gbk是window下编码的
renames=($(ls | iconv -fGBK -tUTF8))
# ${!files[@]} 为数组的下标集合对象 0 1 2 3 4
for i in "${!files[@]}"; do
echo "${files[i]} --> ${renames[i]}"
done
echo -n "Are you sure?[y/n]"
read ok
case $ok in
y | Y | yes)
for i in "${!files[@]}"; do
#改变文件名称
mv "${files[i]}" "${renames[i]}"
done
echo Ok, bye
;;
*)
echo Bye
;;
esac
本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 792114587@qq.com 举报,一经查实,本站将立刻删除。
如若转载,请注明出处:https://www.qiked.com/6885.html
如若转载,请注明出处:https://www.qiked.com/6885.html