linux运维之大文件复制移动进度显示

信息分类: 服务器运维 发布时间: 2022-08-06 15:14:04 访问量: 487

linux下的cp和mv命令,都是不能显示进度的。


对于移动一个非常大的文件来说,我们只能看见界面卡住不动,至于是要执行一个小时,还是要执行几天,已经复制了哪些文件,我们都不知道!!


好在现在可以利用Gnu Coreutils给复制或移动命令添加进度条了。我们需要下载编译安装。以下是说明:


wget http://ftp.gnu.org/gnu/coreutils/coreutils-9.0.tar.xz 
tar xvJf coreutils-9.0.tar.xz
cd coreutils-9.0/ 
wget https://raw.githubusercontent.com/jarun/advcpmv/master/advcpmv-0.9-9.0.patch 
patch -p1 -i advcpmv-0.9-9.0.patch 
export FORCE_UNSAFE_CONFIGURE=1 
./configure
make


还需要把创建的新版文件复制到bin文件中,实现全局命令调用,如下:

cp ./src/cp /usr/local/bin/cpg
cp ./src/mv /usr/local/bin/mvg


通过上面简单的两步就已经实现了复制与移动的进度显示功能支持,那么怎么使用呢?

cpg和mvg命令有现在进度条的功能。

每当你在复制或移动文件和目录时需要进度条时,只需添加-g,如:

cpg -g xxx  xxx
如: cpg -g test/1.txt test2/1,txt
表示把test文件夹中的1.txt复制到 test2文件夹中。


如果要递归复制目录及其子目录,只需添加-R标志,如:

cpg -gR xxx xxx

如: cpg -gR test/* test2

表示把test文件夹中的所有文件复制到test2文件夹中。


如有转载,请注明出处!《linux运维之大文件复制移动进度显示》的原文地址:http://www.xiao6.net/post/235.html