我正在尝试对使用开源 CMS 的多个站点执行更新,但在每个站点的 httpdocs 目录中解压补丁文件。我的计划是查找补丁文件,然后使用以下命令解压:
find . -name "patchfile.tar.gz" -exec tar -xzvf {} \; -print
但似乎没有成功
谁知道为什么不行?
非常感谢。
答案1
您正在提取当前目录中的 tar 文件,而不是补丁文件所在的目录。您可以编写一个小包装器来提取所需目录中的文件,例如
#!/bin/bash
DIR=`dirname $1`
cd $DIR
tar xzf $1
现在搜索命令可以是
find ... -exec tar.sh {} \; ...