千家信息网

如何为Linux的cp和mv命令添加进度条

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,本篇内容主要讲解"如何为Linux的cp和mv命令添加进度条",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"如何为Linux的cp和mv命令添加进度条"吧!
千家信息网最后更新 2026年11月02日如何为Linux的cp和mv命令添加进度条

本篇内容主要讲解"如何为Linux的cp和mv命令添加进度条",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"如何为Linux的cp和mv命令添加进度条"吧!

cp和mv可能是大家日常中使用最多的Linux命令之一。但是有一个突出的问题是这两个命令都不会有任何提示信息,这在操作大文件时候只能干等。可能大家对此已经习以为常,但是其实上也有解决解决方法,本文我们就介绍一个Gnu Coreutils(cp和mv的源代码包)的补丁Advanced Copy,用于给其增加进度条的功能。

Advanced Copy是cp和mv 程序mod。它通过给cp和mv添加了一个进度条,在进行文件(夹)复制或移动操作时候提供进度条,数据传输速率,估计的剩余时间以及当前正在操作文件名等信息。最后,还会提供一个操作的信息摘要显示操作多少个文件以及操作花费多长时间。

安装

下载源码

cp和mv命令是GNU coreutils的一部分。为了给其添加插件,需要下载器源码并编译安装。

我们可以从GNU的软件ftp下载 coreutils或者通过源码Git仓库cgit,或者镜像站 gitweb 和GitHub下载,最新版本为8.32。

curl -O  ftp.gnu.org/gnu/coreutils/coreutils-8.32.tar.xz

使用以下命令解压源码包:

tar xvJf coreutils-8.32.tar.xz

这样所有源码都会解压到coreutils-8.32文件夹中。

cd coreutils-8.32/

给其增加Advanced Copy修补程序(通过github仓库下载github:jarun/advcpmv):

添加补丁

对下载的补丁包,使用下面命令来打补丁:

patch -p1 -i ../advcpmv/advcpmv-0.8-8.32.patch

编译

运行编译程序,对打补丁的源码目录编译

./configure make

编译完成后在该编译目录coreutils-8.32/src的文件夹中会生成应用程序cp和mv。

使用

增加系统路径

只需将它们复制到系统的$PATH中,如下所示:

sudo cp src/cp /usr/local/bin/cp sudo cp src/mv /usr/local/bin/mv

这样cp和mv命令就附带了进度条的功能。在复制或移动文件和目录时需要进度条,只需添加-g参数或者--progress-bar标志:

cp -g archlinux.iso mydownload/ cp --progress-bar archlinux.iso mydownload/

就可以显示进度条:

Copying at 25.7 MiB/s (about 0h 0m 1s remaining)  archlinux.iso 568.1 MiB / 646.0 MiB  [=========================================> ] 87.9 %

在复制过程结束时,可以看到复制了多少文件,复制文件花费了多长时间以及每秒的数据传输速率。

1 files (305.0 MiB) copied in 1.8 seconds (172.2 MiB/s)

要递归复制目录及其子目录,只需添加-Rflag:

cp -gR directory1/ directory2/

同样,要使用mv命令移动文件,请运行:

mv -g archlinux.iso mydownload/

或者,使用--progress-bar标志:

mv --progress-bar archlinux.iso mydownload/

要使用mv命令移动目录,同样使用-g参数:

mv -g directory1/ directory2/

添加别名

还可以创建别名以保存一些按键。编辑~/.bashrc文件:

vim ~/.bashrc

末尾添加以下行:

alias cp='/usr/local/bin/cp -gR' alias mv='/usr/local/bin/mv -g'

按Shift+zz保存并关闭文件。

现在运行source命令以使更改立即生效:

source ~/.bashrc

这样在cp或mv默认就附带-g(或--progress-bar)标志的命令,而无需手动增加该标志。

要使用默认不带精度条的程序,可以通过/usr/bin/cp或 /usr/bin/mv使用即可。

总结

如果经常复制或移动许多大文件和目录,cp和mv操作中添加进度条功能是非常有用的功能。本文中我们介绍了一个Advanced Copy补丁用来实现该功能,可以让我随时了解操作的情况,而不是在哪里傻等。

到此,相信大家对"如何为Linux的cp和mv命令添加进度条"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

命令 文件 进度 源码 目录 补丁 编译 功能 程序 移动 标志 信息 只需 时间 运行 仓库 内容 别名 参数 数据 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技有限公司经营范围 新华互联网科技学院 科技企业和互联网企业 奇酷互联网科技公司 唐信互联网科技 大连 顺玮阁互联网科技 互联网金融和金融科技 哈尔滨秒房互联网科技有限公司 哈尔滨新华互联网科技学院 互联网大会黑科技排名 广州恒生互联网科技有限 岳阳华臻互联网科技有限公司 乌鲁木齐新华智原互联网科技学校 科技大学互联网 群盈汇互联网科技有限公司 中科明德北京互联网科技 黑云互联网科技有限公司 互联网科技接地气 瑞安市蟠桃会互联网科技有限公司 每日互联网科技新闻 广州为想互联网科技有限公司 易通互联网络科技有限公司 互联网科技logo设计 多迪互联网科技有限公司 互联网 科技服务平台 创业天下互联网科技有限公司 互联网时代科技改变生活 用友工业互联网科技发展 美国五大互联网科技公司市值多少 杭州融税互联网科技有限公司
0