批量重命名并捕获现有名称

时间:2013-10-22 17:33:58

标签: php batch-file unicode rename

我正在尝试找到一种方法来重命名目录序列号中的所有文件,同时将数字与CSV等输出文件中的原始文件名相关联。然后通过读取文件名来反转进程的脚本在输出文件中搜索名称并将名称还原到文件。这是为了绕过CD文件名中的限制。

背景: 我们有一个用于处理文件的离线系统。为了安全起见,它是独立的。传输要处理的数据的唯一方法是CD / DVD。

不允许使用新软件。 Powershell无法使用,因为它已被锁定。我们使用PHP来处理数据。所以批量构建和PHP除了手动执行重命名之外,实际上是唯一的选择。

我们每天处理超过2000个文件,手动重命名非常耗时。

详细说明: 这些文件具有超过120个字符的混合语言的unicode名称。 CD工具不会接受超过120个字符,有时会从名称中删除unicode文本。 我们有一个手动过程,涉及将文件名复制到电子表格,然后使用电子表格中的行号重命名文件。在刻录和传输之后,通过使用与其编号匹配的行重命名文件来反转该过程。

查询: PHP可以执行此操作,如果是这样,任何人都有类似脚本的示例吗?

1 个答案:

答案 0 :(得分:1)

此软件包可以使用多种策略重命名目录中的文件。

请参阅phpclasses中的PHP File Renamer

它可以递归遍历目录,并根据几种不同类型的策略重命名文件。

每个策略都定义了如何重命名每个文件。

目前实现了几种类型的策略,例如不同习语中的名称的音译和具有时间值的前缀名称。可以注册其他策略。

重命名的文件可能会被复制到一个单独的目录中。

该课程还可以生成有关重命名文件的CSV格式的报告。