我正在尝试自动svnadmin dump
执行备份脚本命令,并且我想执行以下操作:
find /var/svn/* \( ! -name dir -prune \) -type d -exec svnadmin dump {} > {}.svn \;
这似乎可行,因为它可以浏览中的每个svn存储库/var/svn
并svnadmin dump
在其上运行。
但是,{}
exec命令中的第二个不会替换为正在处理的目录的名称。它基本上只会产生一个名为的文件{}.svn
。
我怀疑这是因为shell解释>
为结束find
命令,并且它尝试将stdout从该命令重定向到名为的文件{}.svn
。
有任何想法吗?
{}
作为参数传递给sh
,然后(内sh
)指的是其作为"$0"
或"$1"
左右。