如何从具有特定名称模式的文件夹内容创建一个zip文件?

可以从文件夹的内容中创建一个tar.gz文件,但只将符合特定名称模式的文件放入存档中,忽略其他文件。例如,只将文件名为log_的文件放入存档中。
2个回答

使用zip示例(您可以选择任何其他压缩工具):
find /path-to-dir -name 'log_*' | zip archive.zip -@

例子:
$ ls
file  log_1  log_2  log_3

现在将所有名为log_*的文件压缩成名为archive.zip的压缩文件

$ find . -name 'log_*' | zip archive.zip -@
  adding: log_1 (stored 0%)
  adding: log_3 (stored 0%)
  adding: log_2 (stored 0%)

现在让我们来检查输出结果:
$ ls
archive.zip  file  log_1  log_2  log_3

1请注意,此搜索是递归进入子目录的。文件夹结构保留在压缩输出文件中,但只包含与搜索查询匹配的文件(例如log_1,log_2,folder/log_21,folder/folder/log_31...)。 - rtribaldos

你可以直接使用tar命令:
tar -zcvf file.tar.gz log_*

似乎这是最简单的方法。 - MoienGK