bz2文件压缩问题

时间:2011-01-17 01:09:33

标签: compression tar

当我们压缩文件夹时,我们输入命令tar -cjf folder.tar.bz2文件夹,它将整个文件夹压缩到其中。

是否有压缩文件夹中的所有内容但文件夹不应出现在存档中?

示例 - 打开存档时,将显示文件夹中的文件而不是整个文件夹。

4 个答案:

答案 0 :(得分:5)

使用tar的-C参数

tar -C folder -jcvf folder.tar.bz2 .

我在我的电脑上尝试了这个并且它有效;)

答案 1 :(得分:3)

这应该这样做:

cd folder; tar -cjf ../folder.tar.bz2 *

最后的*被shell扩展到当前目录中所有文件(隐藏除外)的列表。试试echo *

对于隐藏文件,有两种可能的方法:

  1. 使用ls命令及其-A选项(列出“几乎所有”文件,除...条目以外的所有文件。目录

    cd文件夹; tar -cjf ../folder.tar.bz2 $(ls -A)

  2. 使用通配符表达式(请注意,这在破折号中不起作用,并且,当任何模式不匹配时,您将在参数列表中逐字逐句地获取它)

    cd文件夹; tar -cjf ../folder.tar.bz2 *。[^。] * ..?*

答案 2 :(得分:0)

认为你所指的只是cd folder; tar -cjf ../folder.tar.bz2 * .[^.]*,但我可能是错的。这会将文件名放在生成的存档中的顶层,而不是folder/之后。

答案 3 :(得分:0)

tar -jcvf folder.tar.bz2文件夹/ *