cv: 显示 cp、mv 等命令的进度

2014-07-14 By toy Posted in Apps Edit on GitHub

在 Linux 系统中 , 大多数命令从来都是信奉 “ 沉默是金 ” 的准则 , 所以当我们利用 cp 复制文件的时候并不能看到所谓的进度条 。 如果你在意这一点 , 那么不妨来用用 cv

cv 是 Coreutils Viewer, 它能够显示传输数据的进度 , 包括百分比 、 大小 、 以及速率等信息 。cv 支持 coreutils 中的基本命令 , 比如 cp、mv、rm、dd、tar 等等 。

cv 的源代码可从 GitHub 获取 , 需要自行编译 。

cv:显示Linux命令运行进度的命令

Coreutils Viewer(cv)是一个简单的程序,它可以用于显示任何核心组件命令(如:cp、mv、dd、tar、gzip、gunzip、cat、grep、fgrep、egrep、cut、sort、xz、exiting)的进度。它使用文件描述信息来确定一个命令的进度,比如cp命令。cv之美在于,它能够和其它Linux命令一起使用,比如你所知道的watch以及I/O重定向命令。这样,你就可以在脚本中使用,或者你能想到的所有方式,别让你的想象力束缚住你。安装

你可以从cv的github仓库那儿下载所需的源文件。把zip文件下载下来后,将它解压缩,然后进入到解压后的文件夹。

该程序需要ncurses library。如果你已经在你的Linux系统中安装了ncurses,那么cv的安装过程对你而言就是那么的轻松写意。

通过以下两个简单步骤来进行编译和安装吧。

  1. $ make
  2. $ sudo make install

运行cv

要运行cv,只需要想其它程序一样,在命令行输入此命令即可。如果你没有执行make install,而选择从当前目录中去运行,那么你可以运行以下命令:

  1. $ ./cv

否则,就运行以下命令吧。

  1. $ cv

如果没有核心组件命令在运行,那么cv程序会退出,并告诉你:没有核心组件命令在运行。

要有效使用该程序,请在你系统上运行某个核心组件程序。在本例中,我们将使用cp命令。

当拷贝一个打文件时,你就可以看到当前进度了,以百分比显示。

添加选项到 cv

你也可以添加几个选项到cv命令,就像其它命令一样。一个有用的选项是让你了解到拷贝或移动大文件时的预计剩余时间。

添加-w选项,它就会帮你显示预计的剩余时间。

  1. $ cv -w

试着添加更多的命令选项吧。像下面这样添加其它选项:

  1. $ cv -wq

cv 和 watch 命令

watch是一个用于周期性运行程序并显示输出结果的程序。有时候,你可能想要持续看看命令运行状况而不想将 cv 的结果存储到日志文件中。在这种情况下,watch就会派上用场了,它可以和cv一起使用。

  1. $ watch cv -qw

该命令将会显示所有运行着的核心组件命令的实例。它也会显示进度和预计完成时间。

在日志文件中查看输出结果

正如其所承诺的那样,你可以使用cv来重定向它的输出结果到一个日志文件。这功能在命令运行太快而看不到任何有意义的内容时特别有用。

要在日志文件中查看进度,你仅仅需要重定向输出结果,就像下面这样。

  1. $ cv -w >> log.txt

要查看该命令的输出结果,请用你喜爱的文本编辑器打开日志文件,也可以用cat命令,就像下面这样:

  1. $ cat log.txt

获得帮助

如果你在任何地方受到阻碍,你总是可以通过查阅手册页或使用help选项来获取帮助信息。 要获取帮助信息,可以使用带-h选项的cv命令。

  1. $ cv -h

如果需要更多详细信息,那么手册页是个很不错的地方。

  1. $ man cv

但是,要获取上述手册页,你必须执行make install来安装cv。

耶!现在,你的Linux工具箱中又多了个伟大的工具。 你学会么?亲自去试试吧~

cv:显示Linux命令运行进度的更多相关文章

  1. linux下显示dd命令的进度:

    linux下显示dd命令的进度: dd if=/dev/zero of=/tmp/zero.img bs=10M count=100000 想要查看上面的dd命令的执行进度,可以使用下面几种方法: 比 ...

  2. linux下显示dd命令的进度

    sudo dd if=/dev/zero of=/tmp/zero.img status=progresslinux下显示dd命令的进度:dd if=/dev/zero of=/tmp/zero.im ...

  3. Linux命令运行监测和软件安装

    监测命令的运行时间 time command $ time sleep 5 real 0m5.003s # 程序开始至结束的时间,包括其它进程占用的时间片和IO时间 user 0m0.001s # 进 ...

  4. PHP生成linux命令行进度条

    <?php$total = 100; for ($i = 1; $i <= $total; $i++) { printf("progress: [%-50s] %d%% Done ...

  5. 别出心裁的Linux命令学习法

    别出心裁的Linux命令学习法 操作系统操作系统为你完成所有"硬件相关.应用无关"的工作,以给你方便.效率.安全.操作系统的功能我总结为两点:管家婆和服务生: 管家婆:通过进程.虚 ...

  6. Linux命令学习

    Linux命令学习 Ubuntu常用快捷键 •Ctrl+Alt+T: 打开终端 •Ctrl+Shift+T: 新建标签页 •Tab: 终端中命令补全 •Alt+数字N: 终端中切换到第N个标签页 •↑ ...

  7. linux 查看dd进度

    Linux下显示dd命令的进度: dd if=/dev/zero of=/tmp/zero.img bs=10M count=100000 想要查看上面的dd命令的执行进度,可以使用下面几种方法: 比 ...

  8. mac 关闭&&显示隐藏文件命令

    打开终端,输入: defaults write com.apple.finder AppleShowAllFiles -bool true 此命令显示隐藏文件 defaults write com.a ...

  9. 如何在Mac OS X中开启或关闭显示隐藏文件命令

    打开终端,输入:defaults write com.apple.finder AppleShowAllFiles -bool true 此命令显示隐藏文件defaults write com.app ...

随机推荐

  1. 单网卡多IP导致的socket connect 10060超时错误

    问题: 接管别人代码时遗留的一个bug,在win7下,给一个网卡设置多个ip时,发现无法连接上服务器了.XP下就不会,这多个ip为192.168.1.127,172.1.1.13,10.0.0.1. ...

  2. Codeforces Round #299 (Div. 1)C. Tavas and Pashmaks (凸壳)

    C. Tavas and Pashmaks   Tavas is a cheerleader in the new sports competition named "Pashmaks&qu ...

  3. Scala学习1

    Scala是一种静态语言.面向对象的函数式编程语言.它的程序代码以.scala结尾,编译时会编译成.class字节码在jvm上运行. 类和方法默认是public的,不必显式声明public. retu ...

  4. CDH-5.4.3离线安装

    使用CM离线安装CDH-5.4.3,如下: cdh5.4.3安装 配置/etc/hosts vim /etc/hosts 192.168.10.1 s1 192.168.10.2 s2 192.168 ...

  5. Java[3] Java多线程相关资料

    Java多线程: http://www.uml.org.cn/j2ee/201509093.asp

  6. 【性能优化】优化笔记之一:图像RGB与YUV转换优化

    本文主要介绍如何优化您自己的CODE,实现软件的加速.我们一个图象模式识别的项目,需要将RGB格式的彩色图像先转换成黑白图像.图像转换的公式如下: Y = 0.299 * R + 0.587 * G ...

  7. [React] React Router: Redirect

    The Redirect component in react-router does exactly what it sounds like. It allows us to redirect fr ...

  8. 如何让asp.net mvc 直接运行mobile页面

    在controller里面加上下面一句 HttpContext.SetOverriddenBrowser(BrowserOverride.Mobile);

  9. 使用Mina框架开发 QQ Android 客户端

    Apache MINA是一个网络应用程序框架,用来帮助用户简单地开发高性能和高可靠性的网络应用程序.它提供了一个通过Java NIO在不同的传输例如TCP/IP和UDP/IP上抽象的事件驱动的异步AP ...

  10. 从前有个聊天室(socket&threading)

    服务器端: # -*- coding: utf-8 -*- import socket, threading con = threading.Condition() HOST = raw_input( ...