linux下cp mv显示进度条
coreutils patch形式支持进度条
A patch for GNU Core Utilities cp, mv to add progress bars
env
- rockylinux-9.4
1.download
- https://github.com/jarun/advcpmv/blob/master/install.sh
- https://ftp.gnu.org/gnu/coreutils/coreutils-9.5.tar.gz
file:
- advcpmv-0.9-9.5.patch
- coreutils-9.5.tar.gz
2.patch
cd coreutils-9.5
patch -p1 -i ../advcpmv-0.9-9.5.patch
3.编译
//requirement
dnf install -y gcc gcc-c++ make libacl-devel
//enable root compire
FORCE_UNSAFE_CONFIGURE=1
FORCE_UNSAFE_CONFIGURE=1 ./configure -q
make -s
编译好的成果文件src/xxx(可以看到支持新参数 -g –progress-bar)
[root@vgt-rocky9-60 coreutils-9.5]# ./src/mv --help |grep 'progress-bar'
-g, --progress-bar add progress-bar
./src/cp --help |grep 'progress-bar'
-g, --progress-bar add a progress bar.
4.cp 或 mv 测试显示进度条
./src/cp --progress-bar <file_source> <file_target>
./src/mv --progress-bar <file_source> <file_target>
dd if=/dev/zero of=/tmp/1 bs=1M count=1000
./src/cp -g /tmp/1 /root/
1 folder(s) ( 1.0 GiB) copied in 5.6s (179.2 MiB/s).
./src/mv -g /root/2 /opt
1 folder(s) ( 1.0 GiB) moved in 0.0s ( 0.0 KiB/s).
[root@vgt-rocky9-60 coreutils-9.5]# cp src/cp /usr/local/bin/
[root@vgt-rocky9-60 coreutils-9.5]# cp src/mv /usr/local/bin/