zip在linux上解压出错Unicode编码-解决

unzip xxx.zip

中文名称变为:

#U6570#U503c#U7a33#U5b9a#U6027.md

解决方式:

在解压后的目录下执行脚本:

python 复制代码
python3 - << 'EOF'
import os, re

pat = re.compile(r'#U([0-9a-fA-F]{4})')

def unescape(name: str) -> str:
    return pat.sub(lambda m: chr(int(m.group(1), 16)), name)

changed = 0
for root, dirs, files in os.walk('.', topdown=False):
    for name in dirs + files:
        new = unescape(name)
        if new != name:
            src = os.path.join(root, name)
            dst = os.path.join(root, new)
            os.rename(src, dst)
            print(f"{src} -> {dst}")
            changed += 1

print(f"\nDone. Renamed {changed} items.")
EOF

执行完毕显示正常!

./notes/11-#U6a21#U578b#U9009#U62e9+#U8fc7#U62df#U5408#U548c#U6b20#U62df#U5408.md -> ./notes/11-模型选择+过拟合和欠拟合.md

Done. Renamed 98 items.

相关推荐
kjkdd几秒前
6.1 核心组件(Agent)
python·ai·语言模型·langchain·ai编程
小镇敲码人7 分钟前
剖析CANN框架中Samples仓库:从示例到实战的AI开发指南
c++·人工智能·python·华为·acl·cann
萧鼎8 分钟前
Python 包管理的“超音速”革命:全面上手 uv 工具链
开发语言·python·uv
WHD30629 分钟前
苏州勒索病毒加密 服务器数据解密恢复
运维·服务器
蜡笔小炘41 分钟前
LVS -- 持久链接(Persistent Connection)实现会话粘滞
运维·服务器
alvin_20051 小时前
python之OpenGL应用(二)Hello Triangle
python·opengl
铁蛋AI编程实战1 小时前
通义千问 3.5 Turbo GGUF 量化版本地部署教程:4G 显存即可运行,数据永不泄露
java·人工智能·python
生活很暖很治愈1 小时前
Linux——孤儿进程&进程调度&大O(1)调度
linux·服务器·ubuntu
jiang_changsheng1 小时前
RTX 2080 Ti魔改22GB显卡的最优解ComfyUI教程
python·comfyui
HalvmånEver1 小时前
Linux:线程同步
linux·运维·服务器·线程·同步