将tar文件解压缩到目录中

Ken*_*sen 5 php compression exec tar

我正在尝试将tar文件解压缩到一个目录中,但不知道如何.我可以将它提取到与tar文件相同的目录,但不能提取到另一个文件夹中.

$filename = "homedir.tar";
exec("tar xvf $filename");
Run Code Online (Sandbox Code Playgroud)

尝试了以下,但它不起作用(没有提取任何东西):

exec("tar -C, homedir zxvf $filename");
Run Code Online (Sandbox Code Playgroud)

更新:

这是我文件的内容:

# Absolute paths
$filepath = "/home/acc/public_html/test/test/homedir.tar";
$folderpath = "/home/acc/public_html/test/test/homedir";

# Check if folder exist
if(!is_dir($folderpath)) {
    die('Folder does not exist');
}

# Check if folder is writable
if(!is_writable($folderpath)) {
    die('Folder is not writable');
}

# Check if file exist
if(!file_exists($filepath)) {
    die('File does not exist');
}

exec("tar -C $folderpath -zxvf $filepath");
Run Code Online (Sandbox Code Playgroud)

没有错误,但也没有任何东西正在解压缩.

Kev*_*vin 3

删除 -C 中的逗号并在 zxvf 之前添加破折号:

exec("tar -C $outdir -zxvf $infile");
Run Code Online (Sandbox Code Playgroud)

或者您可以将 -C 部分放在末尾,并且 zxvf 之前不需要破折号:

exec("tar zxvf $infile -C $outdir");
Run Code Online (Sandbox Code Playgroud)

为了确定起见,您可能应该确保您的路径是绝对的。