解压缩文件(popen)上的权限被拒绝

时间:2015-02-19 21:15:01

标签: c++ bash unix

我正在尝试自动执行从服务器发送到客户端的压缩脚本。

假设我有脚本" script.sh":

#!/bin/sh
touch /tmp/my_file.txt

我执行chmod 777 script.sh只是为了确保它在所有地方拥有所有权利。

之后,我将其压缩到package.zip

当客户端请求时,服务器会将 package.zip 编码为base64,通过xml将其发送到客户端,客户端会将其解码回 package.zip 并保存

之后,它被解压缩,客户端尝试使用 popen 执行它。我得到的只是:Permission Denied for script.sh

当我拉链并解压缩原始拉链时,所有权利都设置为之前 777

但是在向客户发送数据之后,权利是: -rw-rw-r - (这有道理为什么它无法执行)< / p>

使用POCO lib decompres

1 个答案:

答案 0 :(得分:3)

Zip文件不需要编码权限。如果你想要那种东西,你需要一个tar文件,因为这种格式确实有一种编码方法。执行此操作的标准方法是tar.gztar.bz