将 .zip 文件解压缩到所有包含 .php 文件的目录中,其中包含文本“house”?

春天

如何将 .zip 文件解压缩到所有包含 .php 文件的目录中,其中包含文本“house”?

就像是:

grep -rl --include='index.php' 'house' /directory/path/of_the_index_file* | xargs unzip /directory2/path/file.zip -d /directory/path/of_the_index_file/

澄清:我只是想将一个包含 2 个文件和一个目录的简单 .zip 文件解压缩到服务器上的所有目录,这些目录包含一个 index.php 文件,在其代码中包含一个特定的字符串。

我会非常感谢任何帮助。

发光二极管

您可以xargs sh -c '...'$(dirname "$1")以下一起使用

grep -rlZ --include='index.php' house /directory/path/of_the_index_file* \
| xargs -0 -I{} sh -c 'unzip /directory2/path/file.zip -d "$(dirname "$1")"' xargs-sh {}

或者更简单,使用 GNU parallel,它具有以下dirname功能{//}

grep -rlZ --include='index.php' house /directory/path/of_the_index_file* \
| parallel -0 -n1 unzip /directory2/path/file.zip -d {//}

如果需要,可以通过添加-j1parallel.

如果parallel未安装,请使用以下命令安装:

sudo apt install parallel

您可能会考虑unzip在开始时运行一次到临时目录并使用cpor lninside xargsor parallel

注意:对于这两种解决方案,我grep -Z一起使用withxargs/parallel -0来避免路径中某处换行符出现问题。就算不影响你,照顾它也是一个好习惯。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何将所有嵌套的 tar.gz 和 zip 解压缩到 PHP 中的目录?

以递归方式将所有xlsx文件解压缩到包含原始文件名的新目录中

如何将 .zip 文件解压缩到 lambda 函数中的目录

将多个zip文件解压缩到具有特定名称的不同文件夹中

将zip文件的子目录内容解压缩到/ tmp?

将所有tar.bz2文件解压缩到目录中

将 .zip 文件解压缩到文件夹 C#

将zip文件解压缩到本地文件夹

将zip解压缩到内存中,解析内容

zipfile将zip解压缩到一个文件夹

.NET 3.5如何使用DotNetZip将ZIP文件解压缩到指定位置

我们如何在linux中指定unzip或7za命令将多个zip文件解压缩到一个文件夹中,同时保留所有重复文件?

批处理如何使用 7zip 将多个 zip 文件解压缩到其原始文件夹?

如何将zip文件解压缩到文件夹中,但要避免重复文件夹?

将tar解压缩到目录中,删除压缩文件中不包含的任何文件

解压缩ZIP文件,然后解压缩所有子ZIP文件

GNU parallel + gunzip(或7z或bsdtar或解压缩):将每个“ archivename.zip”解压缩到(将要创建)其“ archivename”子文件夹中

将.zip文件上传到FTP并使用PHP将其解压缩

将创建的 zip 文件夹解压缩到同一文件夹?

如何将多个zip文件解压缩到一个目录结构中(例如Google Drive文件夹导出)

将文件解压缩到目标目录?

将文件解压缩到新目录

将许多文件解压缩到给定目录

将许多文件解压缩到给定目录

如何将文件解压缩到当前目录?

使用Python 2.7.5将文件夹中的所有压缩文件解压缩到同一文件夹

无法将文件解压缩到文件夹

使用PHP下载后无法解压缩.zip文件

java-如何解压缩zip文件的特定目录中的所有文件?