7zip - 获取解压缩文件的名称

时间:2014-01-14 00:48:22

标签: php batch-file extract 7zip

我有一个执行7-zip提取命令的PHP脚本。提取的文件名与压缩文件的名称不同。 7-zip命令行中是否有开关指定新提取的文件名?

如何将新提取的文件名存储在PHP变量中?

if (endsWith($currentFile, '.zip'))
{
    $extractCMD = '7z e uploads\\' . $currentFile;
    exec($extractCMD);
}

我想我必须为最近创建的文件做另一个exec(),然后存储它。但必须有一个更简单的方法。

1 个答案:

答案 0 :(得分:1)

您可以使用-o指定输出目录,但这会添加一层深度:

7z x -oMyDir some_file.zip

例如,如果some_file通常会输出到some_file/,现在会输出到MyDir/some_file/

如果您只想知道档案中顶级目录的名称,那就更棘手了。您可以使用l命令在提取之前获取文件列表:

7z l some_file.zip

但是你必须分析文件名以查看如果那么根本就有一个顶级目录。没有必要。