在 linux 的命令行输出进度条

要在 Linux 命令行实现输出进度条可以使用 pv 命令,下面是实现的具体步骤和示例。

步骤1:安装 pv 命令

在大多数 Linux 发行版中,可以通过包管理器直接安装 pv 命令。例如,在 Debian/Ubuntu 下可以使用以下命令安装:

sudo apt-get install pv

如果你使用的是其他发行版,可以使用相应的包管理器安装 pv

如果在没有权限的情况下或者想手动编译安装 pv,你可以通过以下步骤从源代码编译安装:

  1. pv 的官方网站下载最新源代码:https://www.ivarch.com/programs/pv.shtml
  2. 解压源代码压缩包
  3. 进入解压后的目录,执行以下命令进行编译安装:

bash
sudo ./configure
sudo make
sudo make install

步骤2:使用 pv 命令输出进度条

假设你有一个文件 largefile.txt,并且你想将该文件复制到另一个位置,并在过程中显示进度条。

要实现这个过程,你可以使用以下命令:

pv largefile.txt > newlocation/largefile.txt

在执行该命令后,pv 命令将会读入 largefile.txt 文件,并在复制过程中实时显示进度条,输出类似于以下这样:

   2.1GiB 15:24:03 [ 511MiB/s] [================>           ] 69% ETA 00:01:06

其中,2.1GiB 表示已经读入的字节数,15:24:03 表示读取该文件已经花费了 15 小时 24 分钟 3 秒,[511MiB/s] 表示当前的读取速度,还有一个进度条以及进度条已经完成的百分比。

如果你想让 pv 显示更多的细节,你可以添加一些选项,例如:

  • -p:显示百分比进度
  • -t:显示已经花费的时间
  • -e:在操作完成后输出一个回车符,避免输出混乱

例如,以下命令将读取 largefile.txt 并复制到 newlocation/largefile.txt,并显示百分比进度、操作时间和已经读取的字节数:

pv -pet largefile.txt > newlocation/largefile.txt

在命令执行过程中,你将会看到类似于以下输出:

32.4 MiB 0:00:24 [1.33 MiB/s] [=======>            ] 31% ETA 0:00:52

其中,32.4 MiB 表示已经读入的字节数,0:00:24 表示读取该文件已经花费了 24 秒,[1.33 MiB/s] 表示当前的读取速度,还有一个进度条以及进度条已经完成的百分比。

综上所述,使用 pv 命令可以方便实现在 Linux 命令行中输出进度条,使得日常操作更加直观易懂。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:在 linux 的命令行输出进度条 - Python技术站

(0)
上一篇 2023年6月26日
下一篇 2023年6月26日

相关文章

  • 电脑如何重装系统 电脑重新安装系统全程图解

    电脑如何重装系统 本文将详细讲解电脑如何重装系统,并提供全程图解和两个示例说明,帮助读者快速掌握这个过程。 准备工作 在重装系统之前,我们需要做好以下准备工作: 备份数据:重装系统会清空电脑中的所有数据,因此在重装系统之前请务必备份好自己的重要数据。 准备安装盘:电脑重装系统需要使用安装盘,可以是光盘或U盘。如果没有安装盘,可以下载Windows官方安装工具…

    other 2023年6月28日
    00
  • 3060锁算力版本的叫什么 3060锁算力版本后缀介绍

    3060锁算力版本的叫什么? NVIDIA推出的3060锁算力版本被称为\”Lite Hash Rate\”(LHR)版本。这个版本是为了限制加密货币挖矿性能而设计的,以防止滥用和市场供应短缺。 3060锁算力版本后缀介绍 在3060锁算力版本的型号名称中,会有一个后缀来表示其锁定的算力。以下是一些常见的后缀及其含义: LHR:Lite Hash Rate,…

    other 2023年8月5日
    00
  • jdbctemplate进行查询

    使用jdbctemplate进行查询 在Java开发中,使用JDBC连接数据库是常见的操作。JDBC提供了一组接口让我们来操作数据库。但是,使用JDBC的过程中需要编写大量的SQL语句和一些繁琐的操作。为了简化这些操作,Spring框架提供了JdbcTemplate类来简化JDBC的操作,下面来讲解如何使用JdbcTemplate类进行查询操作。 创建Jdb…

    其他 2023年3月28日
    00
  • 低代码开发平台——jabdp简介(一)

    以下是关于“低代码开发平台——jabdp简介(一)”的完整攻略,包含两个示例。 低代码开发平台——jabdp简介(一) jabdp是一款低代码开发平台,可以帮助开发人员快速构建应用程序。在jabdp中,我们可以通过拖拽组件、配置属性等方式,快速构建应用程序。下面我们将介绍jabdp的基本使用方法和示例。 1. 基本使用方法 以下是jabdp的基本使用方法: …

    other 2023年5月9日
    00
  • 开通局域网共享(访问本机要填用户名和密码)的注册表和批处理

    开通局域网共享需要进行一些注册表和批处理的配置,具体步骤如下: 打开注册表编辑器(“运行” -> “regedit”)。 找到以下注册表路径:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters 在Parameters节点下,右键选择“新建” ->…

    other 2023年6月27日
    00
  • Python 实现递归法解决迷宫问题的示例代码

    下面我将详细讲解“Python 实现递归法解决迷宫问题的示例代码”的完整攻略,过程中将包含两条示例说明。首先,我们需要明确迷宫问题的概念。 什么是迷宫问题? 迷宫问题是一种求解路径的算法问题,将迷宫地图看成一个矩阵,其中障碍物用1表示,空地用0表示,则迷宫问题即为在这个矩阵中求解从起点到终点的一条可行路径。迷宫问题通常有多种解法,其中递归法是一种常见的解法。…

    other 2023年6月27日
    00
  • Rust Struct结构体详解

    Rust Struct结构体详解 结构体是Rust语言中非常重要和常用的数据类型,用来表示一组相关数据的集合。结构体可以包含不同类型的数据,比如整形、浮点数、字符串等等,也可以包含其他结构体。在该攻略中,我们将详细讲解Rust结构体的用法和注意事项。 定义结构体 结构体可以通过struct关键字定义,在结构体定义中需要指定结构体的字段及其类型。结构体中的字段…

    other 2023年6月27日
    00
  • Debian 9.4 系统安装及Jdk等工具安装方法

    下面是完整的Debian 9.4系统安装及Jdk等工具安装方法攻略。 安装Debian 9.4 下载系统镜像 首先,我们需要在Debian官网上下载Debian 9.4的系统镜像文件。在此,以64位AMD架构为例: wget -c http://mirrors.ustc.edu.cn/debian-cd/current/amd64/iso-cd/debian…

    other 2023年6月27日
    00
合作推广
合作推广
分享本页
返回顶部