windows和linux路径非法字符需分别处理:windows禁用、:、"、|、?、*、、/及末尾.或空格;linux仅限制/和 ;跨平台建议按windows规则清洗,提取basename后校验,清洗后需trim并确保非空。

Windows 和 Linux 下路径非法字符要分开处理
不同操作系统对文件名的限制差异很大,os.IsPathSeparator 只能判断分隔符,不能替代合法性校验。Windows 禁止 、<code>>、:、"、|、?、*、、/(后两者在路径中是分隔符,但出现在文件名里也非法),还禁止以 . 或空格结尾;Linux 主要限制 / 和
