【发布时间】:2023-12-19 01:04:02
【问题描述】:
我有一大堆文件,文件名使用我们可爱的瑞典字母 å å 和 ö。 由于各种原因,我现在需要将这些转换为 [a-zA-Z] 范围。只需删除此范围之外的任何内容都相当容易。给我带来麻烦的事情是我想用 a 替换 å,用 o 替换 ö 和很快。
这是最糟糕的字符集问题。
我有一组测试文件:
files\Copy of New Text Documen åäö t.txt
files\fofo.txt
files\New Text Document.txt
files\worstcase åäöÅÄÖéÉ.txt
我将我的脚本基于这一行,将其结果传递到各种命令中
for %%X in (files\*.txt) do (echo %%X)
奇怪的是,如果我将这个(即普通的 for 循环)的结果打印到一个文件中,我会得到这个输出:
files\Copy of New Text Documen †„” t.txt
files\fofo.txt
files\New Text Document.txt
files\worstcase †„”Ž™‚.txt
所以我的文件名在它们到达其他工具之前就发生了一些奇怪的事情(我一直在尝试使用来自称为 GnuWin32 的 Windows 的 sed 端口来做到这一点,但到目前为止没有运气)并对这些字符进行替换也无济于事。
你会如何解决这个问题?我对任何类型的工具、命令行或其他工具都持开放态度……
编辑:这是一次性的问题,所以我正在寻找一个快速的'n丑陋'修复
【问题讨论】:
标签: windows file batch-file utf-8 rename