转义查找输出的最简单方法



我想做类似的事情

find . -name "*whatever*" | xargs zip my.zip

但是,如果我找到的文件包含某些字符,则会搞砸,例如文件名中的空格。我想我应该逃避结果。我无法从man find中完全理解它是否可以为我做到这一点。所以:

  • 我能让find逃避结果吗?
  • 如果没有,我应该如何逃脱它们?
正是

针对这种情况进行了空分隔。

可以通过-print0选项指示findNUL字符(0(分隔其输出。

可以指示xargs其传入参数将使用-0选项NUL分隔。

因此

find . -name "*whatever*" -print0 | xargs -0 zip my.zip

最新更新