linux压缩文件夹命令显示压缩进度

fiy 其他 234

回复

共3条回复 我来回复
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    要在Linux中压缩文件夹并显示压缩进度,可以使用zip命令结合进度条工具pv。

    首先,确保你的系统已经安装了zip和pv工具。如果没有安装,你可以使用以下命令在Ubuntu上安装它们:

    sudo apt-get install zip pv

    接下来,使用以下命令压缩文件夹并显示压缩进度:

    zip -r folder.zip folder_path | pv -lep -s $(du -sb folder_path | awk ‘{print $1}’) > /dev/null

    其中,folder.zip是压缩后的文件名,folder_path是你要压缩的文件夹路径。

    解释一下上面的命令:

    1. zip -r folder.zip folder_path:这个命令将会压缩文件夹,并将结果存储在folder.zip文件中。

    2. du -sb folder_path | awk ‘{print $1}’:这个命令用于获取文件夹的总大小。通过du命令获取的结果,使用awk命令只提取出文件夹大小。

    3. pv -lep -s $(du -sb folder_path | awk ‘{print $1}’):这个命令使用pv工具显示进度条。-lep参数用于显示进度百分比和估计剩余时间,-s参数用于设置总大小。

    4. > /dev/null:这个命令将所有输出重定向到/dev/null,意味着不会在终端上显示任何输出。

    在执行上述命令后,你将会在终端上看到一个进度条,显示压缩过程的进度百分比和估计剩余时间。完成后,你将会在当前目录下找到压缩后的文件夹文件夹。

    希望对你有帮助!

    2年前 0条评论
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    在Linux中,可以使用如下命令来压缩文件夹并显示压缩进度:

    1. 使用tar命令压缩文件夹:

    “`
    tar -czvf archive.tar.gz folder
    “`

    这将使用tar命令将文件夹压缩成一个.tar.gz文件。在压缩过程中,会显示文件压缩进度。

    2. 使用zip命令压缩文件夹:

    “`
    zip -r archive.zip folder
    “`

    这将使用zip命令将文件夹压缩成一个.zip文件。由于zip命令本身不提供压缩进度显示功能,所以不会有压缩进度条显示,但压缩过程会输出文件名和已压缩的文件数量。

    3. 使用pv命令管道显示压缩进度:

    “`
    tar -cf – folder | pv | gzip > archive.tar.gz
    “`

    这将使用tar命令将文件夹打包成一个.tar文件,并通过管道传递给pv命令来显示压缩进度。然后使用gzip命令将.tar文件压缩成.tar.gz文件。

    4. 使用rsync命令显示文件复制进度:

    “`
    rsync -a –progress folder/ destination/
    “`

    这将使用rsync命令将源文件夹复制到目标文件夹,并显示复制进度。rsync命令本身并不是一个压缩命令,但是可以用来复制文件夹并显示进度,可以间接实现类似的效果。

    5. 使用7z命令显示压缩进度:

    “`
    7z a -r -bd -m0=lzma2 -mx=9 -ms=on archive.7z folder
    “`

    这将使用7z命令将文件夹压缩成一个.7z文件,并显示压缩进度。使用参数`-bd`可以禁用报告和进度条,但仍然会输出已压缩的文件名称。

    以上是几种常用的在Linux中压缩文件夹并显示压缩进度的方法,你可以根据自己的需求选择合适的命令来使用。

    2年前 0条评论
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    在Linux系统中,我们可以使用`tar`命令来压缩文件夹,并通过`pv`命令来显示压缩进度。

    下面是详细的操作流程:

    1. 压缩文件夹
    – 使用以下命令将文件夹压缩为tar文件:
    “`
    tar -cf folder.tar folder/
    “`
    其中,`folder.tar`是压缩后的tar文件名,`folder/`是要压缩的文件夹路径。

    2. 安装`pv`命令
    – 如果系统中没有安装`pv`命令,可以使用以下命令进行安装:
    “`
    sudo apt-get install pv
    “`

    3. 显示压缩进度
    – 使用以下命令将压缩过程通过`pv`命令来显示进度:
    “`
    tar -cf – folder/ | pv | gzip > folder.tar.gz
    “`
    这里使用了管道(`|`)将`tar`命令的输出传递给`pv`命令,再将其输出传递给`gzip`命令来压缩为gzip文件。最后生成的压缩文件为`folder.tar.gz`。

    当执行以上命令时,`pv`命令将会显示出压缩进度信息,包括已压缩的字节数、已压缩的文件数量和压缩速度等。

    需要注意的是,`pv`命令的显示进度并不是准确的压缩进度,而只是一个近似值。因为在压缩的过程中,`tar`命令会将数据块依次写入输出流,`pv`命令根据数据块的大小和写入速度来估算压缩进度。另外,当压缩大文件或者文件夹时,可能会发生瞬时卡顿的情况,这是正常现象。

    2年前 0条评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部