热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

linux查看脚本运行进度条,如何监视Linux命令的进度(带有pv和progress)|MOS86

tar-c帮助文件|pv|tar-x-C文件命令的tar-chelp-files部分指示tar创建(-c)help-files文件夹中文件的存档。这通过pv传递,以便

tar -c帮助文件/ | pv | tar -x -C文件/

命令的tar -c help-files /部分指示tar创建(-c)help-files文件夹中文件的存档。这通过pv传递,以便我们显示进度。 然后将其通过管道传递回命令的最后部分tar。提取之前,将归档(-x)提取到目录,并将目录(-C)更改为Documents。

因此,帮助文件中的文件和文件夹将被复制到“文档”文件夹中,并显示进度。

这次的输出略有不同。

我们没有预计到达时间。 现在,进度条将显示一个移动指示器。 它表明该过程是活动的,但是它没有像传统的进度条一样从左向右增长。 pv仅限于显示其可以从正在传递的进程中提取的信息。

用pv和tar复制文件不会给我们留下存档文件。 tar创建了一种虚拟档案,将其直接反馈回tar以提取文件。 如果我们的目标是复制文件,那就完成了。 但是,如果我们要创建一个存档文件怎么办?

我们仍然可以使用tar创建存档文件,并从pv获取进度报告。 tar使用的选项是-c(创建档案),-z(使用gzip压缩)和-f(档案的文件名)。

请注意,使用-作为文件名,这将导致tar使用stdout,并将其输出写入终端窗口。 我们看不到该输出,因为它是通过pv传输的。

存档的实际名称将是我们将pv的输出传递到的文件名。 在这种情况下,它是help-files.tgz。

tar -czf-./help-files/ | 光伏> help-files.tgz

我们获得与以前相同的进度指示器,并为我们创建了存档文件。

相关文章如何在Linux上使用tar命令压缩和提取文件

pv可以使用许多选项来更改其报告的详细信息。

如果使用这些选项中的任何一个,则所有其他选项都将关闭。 因此,如果要使用三个显示选项,则需要指定这三个选项。

使用不带任何选项的pv与使用-pterb选项相同。

让我们重复最后一个命令,然后将-p(完成百分比)选项传递给pv。

让我们重复最后一个命令,然后将-p(完成百分比)选项传递给pv。

这将关闭所有其他显示选项。 pv仅提供完成百分比元素。

由于pv无法从tar中获取完成百分比,因此进度条将替换为移动指示器。 没有百分比数字。

我们可以使用pv将一个或多个文本文件通过管道传输到wc。 然后,wc将计算回车,字符和单词,而pv将向我们提供进度报告。

在这里,我们将help-files目录中的所有.page文件传送到wc中。

当wc完成时,我们可以看到help-files文件夹中所有.page文件中的回车计数(行),字符和单词。

progress命令提供与pv相同的有用信息,但是它与一组特定的Linux命令一起使用。

要在Ubuntu中安装进度,请使用以下命令:

sudo apt-get安装进度

要在Fedora中安装进度,请使用以下命令:

sudo dnf安装进度

要在Manjaro中安装进度,请使用以下命令:

sudo pacman -Syu进度

在终端窗口中输入进度,然后按Enter键,将为您列出进度可使用的命令。

进展

我们可以使用两种技术来监视进度的命令。 首先是使用管道。

tar命令位于Progress可以监视的受支持命令的列表中,因此请使用tar。

很好使用的选项是标准的-c(创建归档文件),-z(使用gzip压缩)和-f(文件名)选项。 将在help-files文件夹中创建所有内容的压缩存档,该存档将命名为help.tgz。

正在管道化该进程,并使用-m(监视器)选项,以便进度使该进程保持报告状态,直到完成为止。

tar -czf help.tgz ./help-files/ | 进度-m

终端窗口将显示tar命令在创建归档文件时的进度。

在处理每个文件时,将列出该文件,并包含以下信息:

您可能会惊讶地看到第二个数据集出现。 第一个数据集用于tar。 第二个是gzip。 tar调用gzip执行压缩。 因为gzip在受支持的命令列表中,所以有关它的进度报告。

您可以使用-M(监视)选项在实时连续监视模式下使用进度。

在终端窗口中键入以下命令:

进度-M

进度将报告没有任何要监视的命令正在运行。 但是您不会返回命令行。 一直等待直到可以监视的命令开始。 然后它将自动开始对其进行报告。

在另一个终端窗口中,键入进度可以监视的命令列表中的命令。

将要使用猫。 速度过快的命令将不会注册进度,因此请列出非常长的文本文件的内容。

猫words.page

在其中显示进度的终端窗口中,您将在cat命令执行并完成时看到其统计信息。

当cat完成列出文件时,文件进度将返回其等待状态。

每次它可以报告的命令之一执行较大的任务时,进度将自动监视它并报告它。

那很整洁。

不用猜测一个长期运行的命令是如何做的,而用pv和progress来思考一下您的光标就可以休息一下。



推荐阅读
  • 程序员如何选择机械键盘轴体?红轴和茶轴对比
    本文介绍了程序员如何选择机械键盘轴体,特别是红轴和茶轴的对比。同时还介绍了U盘安装Linux镜像的步骤,以及在Linux系统中安装软件的命令行操作。此外,还介绍了nodejs和npm的安装方法,以及在VSCode中安装和配置常用插件的方法。最后,还介绍了如何在GitHub上配置SSH密钥和git的基本配置。 ... [详细]
  • 在Docker中,将主机目录挂载到容器中作为volume使用时,常常会遇到文件权限问题。这是因为容器内外的UID不同所导致的。本文介绍了解决这个问题的方法,包括使用gosu和suexec工具以及在Dockerfile中配置volume的权限。通过这些方法,可以避免在使用Docker时出现无写权限的情况。 ... [详细]
  • imx6ull开发板驱动MT7601U无线网卡的方法和步骤详解
    本文详细介绍了在imx6ull开发板上驱动MT7601U无线网卡的方法和步骤。首先介绍了开发环境和硬件平台,然后说明了MT7601U驱动已经集成在linux内核的linux-4.x.x/drivers/net/wireless/mediatek/mt7601u文件中。接着介绍了移植mt7601u驱动的过程,包括编译内核和配置设备驱动。最后,列举了关键词和相关信息供读者参考。 ... [详细]
  • 在CentOS/RHEL 7/6,Fedora 27/26/25上安装JAVA 9的步骤和方法
    本文介绍了在CentOS/RHEL 7/6,Fedora 27/26/25上安装JAVA 9的详细步骤和方法。首先需要下载最新的Java SE Development Kit 9发行版,然后按照给出的Shell命令行方式进行安装。详细的步骤和方法请参考正文内容。 ... [详细]
  • Ubuntu安装常用软件详细步骤
    目录1.GoogleChrome浏览器2.搜狗拼音输入法3.Pycharm4.Clion5.其他软件1.GoogleChrome浏览器通过直接下载安装GoogleChro ... [详细]
  • Java在运行已编译完成的类时,是通过java虚拟机来装载和执行的,java虚拟机通过操作系统命令JAVA_HOMEbinjava–option来启 ... [详细]
  • 本文介绍了在Linux系统下进行文件压缩与解压的常用命令,包括tar命令的基本使用和参数,以及gzip、bz2、compress、rar和zip等不同格式的压缩与解压方法。同时还提供了常见的压缩文件后缀名及对应的解压命令,方便用户进行文件的压缩和解压操作。 ... [详细]
  • 本文介绍了在Ubuntu系统中清理残余配置文件和无用内容的方法,包括清理残余配置文件、清理下载缓存包、清理不再需要的包、清理无用的语言文件和清理无用的翻译内容。通过这些清理操作可以节省硬盘空间,提高系统的运行效率。 ... [详细]
  • systemd-nspawn可以创建最轻量级的容器(ns的意思就是namespace),本文的实验平台是Ubuntu16.04,x86_64机器。本文的目的是:在Ubuntu中用syst ... [详细]
  • docker安装到基本使用
    记录docker概念,安装及入门日常使用Docker安装查看官方文档,在"Debian上安装Docker",其他平台在"这里查 ... [详细]
  • mapreduce原理_MapReduce原理及WordCount实践
    参考链接:https:www.cnblogs.comlaowangcp8961946.html一、MapReduce流程1.1Mapreduce整体流程: ... [详细]
  • C语言 文件 看这一篇就够了
    码字不易,对你有帮助点赞转发关注支持一下作者微信搜公众号:不会编程的程序圆看更多干货,获取第一时间更新想看更好排版,可以看原 ... [详细]
  • 开发中,EXT封装的.NET控件,使用了ExtJsExtenderControl的开源控件,发现个问题,就是每次控件加载,都需要调EXT_ALL.JS文件,600K,导致页面加载很慢。想对这个问题进行 ... [详细]
  • Linux操作系统回炉复习各种常用命令集合解析
    Linux操作系统回炉复习各种常用命令集合解析猿码互联猿码互联今天Linux终端命令格式目标了解终端命令格式知道如何查阅终端命令帮助信息01.终端命令格式command[ ... [详细]
  • 用SpringBoot实现万能文件在线预览
    推荐一个用SpringBoot搭建的文档在线预览解决方案:kkFileView,一款成熟且开源的文件文档在线预览项目解决方案,对标业内付 ... [详细]
author-avatar
l87653644
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有