【发布时间】:2017-09-18 13:24:06
【问题描述】:
我正在寻找一种将特定文件类型的所有文件归档在每个子文件夹的一个 zip 文件中的方法。
我的文件夹结构如下:
/path/to
└── TopLevel
├── SubLevel1
│ ├── SubSubLevel1
│ ├── SubSubLevel2
│ └── SubSubLevel3
├── SubLevel2
│ ├── SubSubLevel1
│ ├── SubSubLevel2
│ └── SubSubLevel3
├── SubLevel3
│ ├── SubSubLevel1
│ └── SubSubLevel2
└── SubLevel4
在每个文件夹或子文件夹或子子文件夹中,有文件类型为 *.abc、*.xyz 以及 *.001 到 *.999 的文件,我想将所有这些文件压缩成每个文件夹一个 zip 文件,即“TopLevel”的“SubLevel1”的“SubSubLevel1”文件夹中的所有指定类型的文件应打包到“SubSubLevel1”文件夹内名为“SubSubLevel1_data.zip”的一个文件中。这些文件夹中与上述搜索条件不匹配的所有其他文件都应解压缩到同一目录中。
我找到了一些想法 here 或 here,但是这两种方法都基于不同的文件归档方式,由于我不是很有经验,所以到目前为止我还没有找到一种方法来满足我的需求使用 shell 脚本。我也尝试过使用 AppleScript 获得解决方案,但我面临的问题是如何获取文件夹中的所有文件,并将数字作为扩展名(*.001 到 *.999)。使用 RegEx,我会执行类似 ".abc|.xyz.\d\d\d" 之类的操作,这将涵盖我对某些文件类型的搜索,但我现在也不确定如何在 AppleScript 中实现 grep 的结果。
我想肯定有人知道如何解决我的归档问题。提前感谢您的建议。
【问题讨论】:
标签: shell zip applescript