补充说明

pv命令 Pipe Viewer 的简称,由Andrew Wood 开发。意思是通过管道显示数据处理进度的信息。这些信息包括已经耗费的时间,完成的百分比(通过进度条显示),当前的速度,全部传输的数据,以及估计剩余的时间。

下载安装

# Debian 系的操作系统,如 Ubuntu

sudo apt-get install pv

# RedHat系的则这样:

yum install pv

语法

pv(选项)(参数)

pv [OPTION] [FILE]...

选项

-p, --progress show progress bar

-t, --timer show elapsed time

-e, --eta show estimated time of arrival (completion)

-I, --fineta show absolute estimated time of arrival

(completion)

-r, --rate show data transfer rate counter

-a, --average-rate show data transfer average rate counter

-b, --bytes show number of bytes transferred

-T, --buffer-percent show percentage of transfer buffer in use

-A, --last-written NUM show NUM bytes last written

-F, --format FORMAT set output format to FORMAT

-n, --numeric 输出百分比

-q, --quiet do not output any transfer information at all

-W, --wait display nothing until first byte transferred

-D, --delay-start SEC display nothing until SEC seconds have passed

-s, --size SIZE set estimated data size to SIZE bytes

-l, --line-mode count lines instead of bytes

-0, --null lines are null-terminated

-i, --interval SEC update every SEC seconds

-w, --width WIDTH assume terminal is WIDTH characters wide

-H, --height HEIGHT assume terminal is HEIGHT rows high

-N, --name NAME prefix visual information with NAME

-f, --force output even if standard error is not a terminal

-c, --cursor use cursor positioning escape sequences

-L, --rate-limit RATE limit transfer to RATE bytes per second

-B, --buffer-size BYTES use a buffer size of BYTES

-C, --no-splice never use splice(), always use read/write

-E, --skip-errors skip read errors in input

-S, --stop-at-size stop after --size bytes have been transferred

-R, --remote PID update settings of process PID

-P, --pidfile FILE save process ID in FILE

-d, --watchfd PID[:FD] watch file FD opened by process PID

-h, --help 显示帮助

-V, --version 显示版本信息

实例

我们(在 linux 上使用命令行的用户)的大多数使用场景都会用到的命令是从一个 USB 驱动器拷贝电影文件到你的电脑。如果你使用 cp 来完成上面的任务,你会什么情况都不清楚,直到整个复制过程结束或者出错。

# 复制文件会有进度

linux [master●] % pv ~/Downloads/CentOS-7-x86_64-Minimal-1511.iso > ~/Desktop/CentOS-7-x86_64-Minimal-1511.iso

# 下面输入信息

552MiB 0:00:02 [ 212MiB/s] [==================> ] 91% ETA 0:00:00

# -L 可以让你修改 pv 命令的传输速率。

# 使用 -L 选项来限制传输速率为2MB/s。

pv -L 2m /media/himanshu/1AC2-A8E3/fNf.mkv > ./Desktop/fnf.mkv

# 字符一个个匀速在命令行中显示出来

echo "Tecmint[dot]com is a community of Linux Nerds and Geeks" | pv -qL 10

# 压缩文件展示进度信息

pv /media/himanshu/1AC2-A8E3/fnf.mkv | gzip > ./Desktop/fnf.log.gz

# 用 dd 命令将 iso 写入磁盘,pv来实现进度条的显示

sudo pv -cN source < /Users/kacperwang/Downloads/CentOS-7-x86_64-Everything-1511.iso | sudo dd of=/dev/disk2 bs=4m

## 显示下面进度

source: 5.2GiB 5:11:41 [ 503KiB/s] [=====================> ] 71% ETA 2:01:56

linux使用管道显示某一进程的运行情况,pv - 显示当前在命令行执行的命令的进度信息,管道查看器...相关推荐

  1. Linux命令行执行sqlite3命令创建表格,插入数据,获取数据

    Linux命令行执行sqlite3命令创建表格,插入数据,获取数据 文章目录 Linux命令行执行sqlite3命令创建表格,插入数据,获取数据 1-进入sqlite3 2-创建数据库 3-创建表 4 ...

  2. linux跑循环脚本占内存,Linux下实现脚本监测特定进程占用内存情况

    Linux系统下,我们可以利用以下命令来获取特定进程的运行情况: cat /proc/$PID/status 其中PID是具体的进程号,这个命令打印出/proc/特定进程/status文件的内容,信息 ...

  3. Linux下实现脚本监测特定进程占用内存情况

    原文链接:http://blog.csdn.net/keheinash/article/details/50641090 内存泄露是C/C++程序员经常需要面对的问题,除了有效地经常查找出内存泄露的位 ...

  4. RAKsmart:Linux SSH 客户端断开后保持进程继续运行配置方法

    Linux 系统中,通常我们在执行一些运行时间比较长的任务时,必须等待执行完毕才能断开 SSH 连接或关闭客户端软件,否则可能会导致执行中断.本文介绍几种保障程序在用户退出登录后持续运行的方法. 使用 ...

  5. Linux和Windows命令行中使用命令的输出(删除几天前的日志)

    如果我们需要在命令行中使用命令的结果,需要怎么做? 很常见的一种情况是我们需要当前工作目录的路径.在Linux下,可用这样: $ echo `pwd` $ ./mdu `pwd` 在Windows下面 ...

  6. linux 下的远程上传命令行,使用scp命令用命令行从服务器上传下载文件

    Linux scp 命令用于 Linux 之间复制文件和目录 scp 是 secure copy 的缩写, scp 是 linux 系统下基于 ssh 登陆进行安全的远程文件拷贝命令. scp 是加密 ...

  7. linux解压mysql文件命令行_linux mysql命令

    1.linux下启动mysql的命令: mysqladmin start /ect/init.d/mysql start (前面为mysql的安装路径) 2.linux下重启mysql的命令: mys ...

  8. Linux中10个有用的命令行补齐命令

    本文由 极客范 - 踏雁寻花 翻译自 Balakrishnan Mariyappan.欢迎加入极客翻译小组,同我们一道翻译与分享.转载请参见文章末尾处的要求. 在Linux系统中,输入一个命令,再按两 ...

  9. 如何避免 Go 命令行执行产生“孤儿”进程?

    简介: 在 Go 程序当中,如果我们要执行命令时,通常会使用 exec.Command ,也比较好用,通常状况下,可以达到我们的目的,如果我们逻辑当中,需要终止这个进程,则可以快速使用 cmd.Pro ...

最新文章

  1. .net实现跨页面传值
  2. Python 键盘鼠标监听
  3. NetworkOnMainThreadException异常
  4. unity调用普通java类_Unity中C#和Java的相互调用实例代码
  5. PHP5.6版本“No input file specified”问题
  6. UA MATH575B 数值分析下VI 统计物理的随机模拟方法1
  7. pandas读取剪切板
  8. Ubuntu 16.04下Markdown编辑器Haroopad
  9. CodeForces - 1437E Make It Increasing(确定首尾的最长不下降子序列)
  10. ChipKill内存技术
  11. mysql查询条件为or_使用mysql查询where条件里的or和and
  12. 如何获得带时间的ping的结果
  13. bootstrap的ajax提交
  14. Hadoop中Writable类
  15. HTTPS协议的简述
  16. WinForms和XNA
  17. java面试题 垃圾回收机制 GC BAT面试题系列 基础篇(十四)
  18. 如何选择适合的伺服电机?
  19. 【IoT】项目管理:如何做好端到端的项目管理?
  20. 六种方法教你更好地使用小型WiFi摄像机

热门文章

  1. 用eclipse和Tomcat写一个简易聊天室
  2. 精彩文章推荐:漫谈IDE
  3. 操作系统概述以及启动、中断和系统调用
  4. 励志名言大全-励志名言警句-经典励志名言-应有尽有十句一经典
  5. 如果一百多人在漏水的船上讨价还价谁该往外多舀水
  6. 如何做好软件售前和售前的心得体会
  7. 打造Win10下完美Linux体验(WSL2+WindowsTerminal+oh-my-zsh),完整图文教程+报错解决方案
  8. 关于网站的SEO优化
  9. 那些年我们参加过的Cocos大会 致触控科技坚守初心的六年
  10. 华为回应俄罗斯公司测试鸿蒙系统;​小米辞退不能胜任工作员工终审败诉;Ubuntu有了滚动发行版|极客头条