问题标签 [tar]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
perl - 为什么当我使用 Perl 的 Archive::Tar 时 tarball 目录结构会消失?
我正在使用 Perl 脚本修改 .tar 中的一些文件,生成的 .tar 中的目录结构消失了。消除越来越多的代码,我已经达到了重现这一点所需的一切
两个 .tar 文件都包含所有文件,但是文件和子目录所在目录的指示会丢失。
我已经查看了Archive::Tar的文档和 src,但我真的不明白发生了什么。
我在 win32、tar 1.12 和 Archive::Tar 1.54 上使用 perl 5.10.0。我在编辑器中检查了 .tar 文件,data.tar 包含 dir/ 和 dir/file.txt,但在 modified_data.tar 中,它们显示为 dir 和 file.txt,所以我的原始 tar 似乎没问题。
你们中的任何人以前见过这个或有任何想法吗?
windows - 将 tar/gzip 添加到 Windows 命令行
正如标题所说 - 任何人都知道将 tar/gzip 添加到 Windows 命令行的方法吗?我已经安装了 Cygwin - 但不知道是否必须在 PATH 环境变量中添加一些内容才能将 tar 作为 cmd 选项
c - 如何解压内存中的文件(c 编程)?
让我解释一下我想要实现的:
我有一个加密的 tar 文件。我可以在内存中解密它,但显然我不能将解密后的数据作为真实文件写回硬盘。解密后的数据结构为内存中的 char* 缓冲区;我怎样才能在内存中解压它?
我找不到 libtar 库的答案。我也尝试用execlp("tar", "tar", "-xvO", (void*)0)
. 但它并没有像我想象的那样工作。
任何人都可以给我一个最佳解决方案的提示吗?谢谢!
bash - 按文件复制目录树文件
我的顾问经常将一堆软件编译到他的 /usr/local 中,然后将他的 /usr/local 作为 tarball 分发。然后我将压缩包解压到我们的实验室机器上供我们使用。到目前为止,这一切都很好,我们只需将旧的 /usr/local 替换为 tarball 的内容。
但我已经开始在这些机器上安装我自己的软件。如果我删除 /usr/local,显然某些软件和配置也会被删除。
相反,我怎样才能递归地将文件从 tarball 复制到 /usr/local 中的相应目录中?
例如:
等等
或者这对于 ServerFault 来说是一个更好的问题吗?
linux - 如何从此脚本中提取存档(使用 tar)
我完全不知道如何解压创建的档案。我给你完整的脚本。一个名为 Univention 的基于 Debian 的 Distibution 使用它来备份 tar 存档中的多个文件。
真正的存档被打包在一个函数中。他们创建实际 tar 文件的主要内容是:
系统上的存档为 54 GB,tar xvf 仅提取存档的第一级。抱歉很难解释。总而言之,我只能从这 54GB 中获得 40MB。应该在存档中的所有目录都不会被提取。
$((tar ... tar ... ) | dd > foo) 的使用
我也完全不知道,这个脚本是做什么的?
我想我自己找到了一个解决方案(我稍微更新了脚本):脚本生成一个标记,标记第一个存档的结束。我使用 grep -A1 -a -b "HEADER_ENDTAG" backup.tar 值为 41247795 dd skip=41247795 if=../../backup of=test
看起来我现在可以提取“真实”档案。有没有另一种方法可以自动跳转到这个字节偏移量,例如不使用 grep 手动?
perl - 如何在 Win32 上使用 Perl 归档一组文件,同时保留文件路径?
发现问题。 不过,我将问题留在这里,以防其他人遇到我遇到的同样问题。
看起来我在 WinZip 11 中遇到了错误或奇怪的功能。当我双击 test2.zip 文件查看其内容时,WinZip 告诉我数据文件的路径是小写的“allcapsname”,但是当 WinZip 提取存档(从右键单击“提取到此处”菜单),它实际上正确地创建了“ALLCAPSNAME”目录。我一直在抱怨我认为 Archive::Zip 遇到的问题,而这一直是 WinZip 的问题。感谢所有帮助找出问题所在的人。
事实证明,要在使用 Archive::Tar 时获得在 WinZip 文件中显示的路径,您需要在代码中使用这一行来强制 Archive::Tar 偏离严格的 POSIX 合规性:$Archive::Tar::DO_NOT_USE_PREFIX = 1 ;
原始问题: 到目前为止,我发现了一些似乎能够从我的 Perl 脚本中创建 ZIP 或 GZIP 或 TAR 或 TGZ 存档文件的各种 Perl 模块,但实际上我还没有从其中任何一个中获得完全成功. 为什么这么难?是因为我在 Windows 机器上吗?(到目前为止,我在这个看似简单的任务上浪费了大约 4 个小时,真的很沮丧。)
当我尝试Archive::Tar时,我成功创建了存档文件,但由于某种原因,我无法获得包含在 tarball 中的任何文件的路径。我在我的代码中尝试了一堆不同的东西,我的 tarball 总是在其中显示带有空路径的文件。(我正在使用 WinZip 查看我的压缩包。)
当我尝试Archive::Zip时,我取得了更大的成功,并且我获得了包含在存档文件中的文件的实际目录路径。唯一的问题是我的文件路径从大写变为小写。为什么它改变了我的目录的大小写?我希望实际的目录名称保持原样。
我尝试了其他一些模块但没有成功。我什至无法从Archive::Builder获取示例代码进行编译。
原始问题附录:
我终于能够创建一个最小的可执行脚本,它清楚地展示了我上面描述的关于 Archive::Zip 和 Archive::Tar 的 2 个问题。
此脚本创建 3 个档案。第一个存档包含具有适当路径“MyArchiveFiles\”的数据文件。当我的目录名称全部大写时,就会出现我的问题。第二个存档包含数据文件,但存档文件中的路径不是预期的“ALLCAPSNAME\”......它是“allcapsname\”。这对我来说是个问题。为什么它改变了我的路径,我怎么能强迫它不管它?
第三个存档包含数据文件,但它包含该文件的空路径。这对我来说是个问题。我需要存档中的路径,以便在解压缩存档时将文件提取到适当的目录结构中。
netbeans - 如何从 jar 文件、Netbeans、ant 创建 tar 文件
嗨,我有 netbeans 6.7.1。我的 build.xml 文件创建了一个 jar 文件。现在我想要 jar 和 tar 文件。我的 tar 文件必须从我的 jar 文件创建。那么如何通过在 build.xml 中进行一些更改来从我的 jar 文件创建 tar 文件。我认为它使用ant来创建jar文件。
谢谢 Sunil Kumar Sahoo
unix - 用于创建指定数量文件的 tar 的 Unix 命令
我正在寻找一个 Unix 命令,它将从一个目录创建一个 10 个文件的 tar。
python - 如何确定数据是否是没有文件的有效 tar 文件?
我的上传表单需要一个 tar 文件,我想检查上传的数据是否有效。tarfile模块支持,is_tarfile()
但需要一个文件名——我不想浪费资源将文件写入磁盘只是为了检查它是否有效。
有没有办法使用标准 Python 库在不写入磁盘的情况下检查数据是否为有效的 tar 文件?
iphone - iPhone 上的“解压缩”文件
我正在编写一个 iPhone 应用程序,该应用程序从 Web 服务器下载一个 tar-gzipped 文件,然后需要解压缩该文件,以便可以将其复制到应用程序的 Documents 文件夹中。
我使用 tar/gzip 是因为我想在一个 HTTP 请求中下载一大堆小文件,以使一切变得又好又快。
我已经研究了http://www.feep.net/libtar/之类的解决方案,但作为一个 C/Objective-C 新手,我无法为 iPhone 平台编译它们中的任何一个。
(我觉得我应该能够对“tar -zxvf myfile.tar.gz”进行系统调用,但看起来并不那么容易!)
那么有没有一种简单的方法来解压缩 iPhone 上的文件?或者我是否将这一切都错了,有没有更好的方法来做到这一点?
提前致谢!
尼克