β

下载的文件名总是「乱码」?教你把它一键变回中文 | 一日一技

少数派 186 阅读

有时候,我们从网上下载的文件,本来应是中文名称,但是下载后却是形如「%E9%AB%98%E9%A2%91」的字符串。本文介绍一种快捷方法,将文件名转换回中文。

这种情况往往是由于网站和浏览器之间存在兼容性问题导致的,我在使用 Firefox 下载网盘中的文件时就遇到过,这些形如「%E9%AB%98%E9%A2%91」的字符串实际上是文件名的 URL 编码。其实可以利用 Mac 自带的工具一键批量解决它。

这里,我使用 Automator 编写了一个文件服务,使用方法:

首先,下载「 ♲ 文件名 UrlDecode.workflow.zip 」,解压后双击安装。

null

然后,右键单击需要处理的文件,选择 服务 子菜单中的 ♲ 文件名 UrlDecode ,完毕。

这个服务不需要网络,支持批量处理多个文件或文件夹。

使用演示
使用演示

用 Automator 打开会发现其原理很简单,只有「运行 Shell 脚本」的操作,如图所示:

原理
原理

其中的 Shell 代码为:

# 调用 Python 内置模块进行解码
alias urldecode='python -c "import sys, urllib as ul; print ul.unquote_plus(sys.argv[1])"'
# 遍历选择的文件列表,进行重命名
for f in "$@"
do
    newName=$(urldecode "$f")
    mv "$f" "$newName"
done

关于 URL 编码,你可以看 这篇文章 进一步了解。

比起用一些 在线网站 将这种编码转换回中文,然后再对文件进行重命名的方法,用 Mac 自带的 Automator 解决更加方便。

> 下载 少数派 iOS 客户端 、关注 少数派公众号 ,让智能设备更好用 ⚡️

作者:少数派
少数派发现优质应用、游戏与设备周边,撰写客观深度的评测,制作实用易懂的教程,以少数人的力量,改变多数人的数字生活。

发表评论