使用 Github 上的开源项目 advcpmv 来实现 Linux 中的 「cp」 和 「mv」 命令的进度条。
# 下载coreutils
wget https://mirrors.aliyun.com/gnu/coreutils/coreutils-9.1.tar.xz
tar xf coreutils-9.1.tar.xz
cd coreutils-9.1/
# 下载 github 上的补丁
git clone https://ghproxy.com/https://github.com/jarun/advcpmv.git
cp -a advcpmv/advcpmv-0.9-9.1.patch .
patch -p1 -i advcpmv-0.9-9.1.patch
# 编译安装
./configure && make
注意使用root用户编译会报错
需要声名一下环境变量,然后重新编译即可
export FORCE_UNSAFE_CONFIGURE=1
# 将打补丁生成的cp和mv命令的二进制文件复制到bin目录下
cp src/cp /usr/local/bin/cp
cp src/mv /usr/local/bin/mv
我们只需要在使用 cp 和 mv 命令的时候加上 -g 参数就可以显示进度条了,为了方便起见我们可以在 .bashrc 文件中设置 alias
alias cp='cp -ig'
alias mv='mv -ig'
演示如下:
执行中
执行完