Har*_*van 5 character-encoding wget filenames
我用wget.
该站点是德语,其中一些页面的 URL 中包含 Ü,ü,Ö,ö,Ä,ä,ß。
现在有些文件有一个非常奇怪的名字。
例如,一个文件被称为mirror.de/?%9Cbersicht.html
有没有办法运行一个命令,将奇怪的编码更改为正确的编码?
在示例案例中,我希望以下结果为有效结果 mirror.de/Uebersicht.html
编辑: L 的输出C_CTYPE=C ls | grep bersicht.html | od -t x1:
0000000 42 69 6e 61 72 79 20 66 69 6c 65 20 28 73 74 61
0000020 6e 64 61 72 64 20 69 6e 70 75 74 29 20 6d 61 74
0000040 63 68 65 73 0a
0000045
Run Code Online (Sandbox Code Playgroud)
如果您只解码 %XX URI 编码,您很可能会得到 UTF-8 编码的字符。在zsh:
autoload zmv\nLC_ALL=C zmv '(**/)(*%*)' '$1${2//(#b)%(??)/${(#):-0x$match}}'\nRun Code Online (Sandbox Code Playgroud)\n\n如果正如 Gilles 所指出的那样,\xef\xbf\xbd 替换字符是 0xc3 字节(在 iso8859-1 中是一个字母,可以解释为什么它没有被 URI 编码,与 0x9c 相反,0x9c 在 iso8859-1 中无效) 1),那么上面的命令会将你的文件名更改为\xc3\x9cbersicht.html
| 归档时间: |
|
| 查看次数: |
4111 次 |
| 最近记录: |