bash find -exec有时可以工作,有时则不工作

时间:2014-08-24 19:56:14

标签: linux find rsnapshot

我可能遗漏了一些东西,但是这个onbiner在一个bash脚本中循环遍历一些从不同来源转储数据的脚本:

find . -name 'dump-*.sh' -exec {} "$DUMP_LOG" &>>"$DUMP_LOG" \;
当我直接执行包含此oneliner的bash脚本时,

将起作用,但当我将其作为rsnapshot中的cmd_preexec调用时,它不起作用。它不会产生任何错误,它只是没有做任何事情。

我尝试添加'(/ bin /)bash -c',如下所示:

find . -name 'dump-*.sh' -exec bash -c '{} "$DUMP_LOG" &>>"$DUMP_LOG"' \;

然后我得到一个关于'(/ bin /)bash不存在的错误,即使直接使用了Irun脚本。

1 个答案:

答案 0 :(得分:1)

好吧,傻,我。当然,find-cmd的第一个参数需要工作目录。

find /usr/local/sbin -name 'dump-*.sh' -exec {} "$DUMP_LOG" &>>"$DUMP_LOG" \;

解决了这个问题。