我如何search文件,并在一个zip文件中压缩它们

我试图search文件,并使用以下命令将其压缩

find . regexpression -exec zip {} \; 

然而它不工作。 我怎样才能做到这一点?

Solutions Collecting From Web of "我如何search文件,并在一个zip文件中压缩它们"

你使用的命令将分别在每个文件上运行zip,试试这个:

 find . -name <name> -print | zip name.zip -@ 

-@告诉zip从输入中读取文件,从man zip(1) :

– @文件列表。 如果一个文件列表被指定为 – @ [不是在MacOS上],zip从标准输入中取出输入文件的列表,而不是从命令行输入。

您也可以提供名称作为查找命令的结果:

 zip name.zip `find . -name <name> -print` 

这是您正在使用的外壳的一个功能。 你可以搜索“反引号”来确定你的shell如何处理这个。

你的回应是接近的,但是这可能会更好:

 find -regex 'regex' -exec zip filname.zip {} + 

这将把所有匹配的文件放在一个名为filename.zip的zip文件中。 您不必担心文件名中的特殊字符(如换行符),如果您输入结果,则会出现这种情况。