仅在找到文件时创建ZIP - 使用shell脚本

时间:2013-04-19 20:44:25

标签: linux shell unix zip find

我想根据find命令的结果创建一个ZIP。但是当zip命令没有任何zip内容时会抛出错误。

find ${DIRECTORY_TO_SEARCH} -type f -mtime -7 | xargs zip "${ZIP_FILE}"

zip命令引发的错误代码: zip错误:缺少或清空zip文件

如果只有在文件数超过0时才能确保创建ZIP?

谢谢!

1 个答案:

答案 0 :(得分:1)

如果你有GNU xargs,你可以使用-r开关:

--no-run-if-empty
-r    If the standard input does not contain any nonblanks, do not run the command.
      Normally, the command is run once even if there is no input.
      This option is a GNU extension.

示例:

$ echo "" | xargs echo "foo"
foo
$

$ echo "" | xargs -r echo "foo"
$