将指定目录中的所有文件名从gbk编码转成utf-8

本文介绍了一个使用bash脚本实现的功能,该脚本能将指定目录下的所有文件名从GBK编码转换为UTF-8编码。通过递归处理整个目录结构,确保了文件名在不同编码环境下的一致性和正确性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

http://lwfs.net/2006/12/19/116/

简单的iconvmv —— 将指定目录中的所有文件名从gbk编码转成utf-8

<!-- The following two sections are for a noteworthy plugin currently in alpha. They'll get cleaned up and integrated better -->

代码如下:

  1. #!/usr/bin/bash
  2. if [ "x$1" = "x" ]; then
  3. echo "Usage: $0 <filename>"
  4. fi
  5. iconvmv() {
  6. local tf
  7. local f
  8. if [ -d "$1" ]; then
  9. tf=`echo "$1"|iconv -f gbk -t utf-8 -c`
  10. if [ "$1" != "$tf" ]; then
  11. mv "$1" "$tf"
  12. fi
  13. cd "$tf"
  14. for f in `ls`
  15. do
  16. $0 "$f"
  17. done
  18. elif [ -f "$1" ]; then
  19. tf=`echo "$1"|iconv -f gbk -t utf-8 -c`
  20. if [ "$1" != "$tf" ]; then
  21. mv "$1" "$tf"
  22. fi
  23. fi
  24. return 0
  25. }
  26. iconvmv $1
  27. </filename>
<!-- <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/"> <rdf:Description rdf:about="http://lwfs.net/2006/12/19/116/" dc:identifier="http://lwfs.net/2006/12/19/116/" dc:title="简单的iconvmv —— 将指定目录中的所有文件名从gbk编码转成utf-8" trackback:ping="http://lwfs.net/2006/12/19/116/trackback/" /> </rdf:RDF> -->
<!-- You can start editing here. -->
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值