Advanced-Copy是一个强大的命令行程序,属于cp命令和mv工具结合修改版。最明显特征是增加了进度条及大文件复制所需总时间。这个附加的功能可以让用户在复制大文件时可以更了解复制过程状态及所需时间。
在Linux中安装Advanced-Copy使用程序需要使用以下curl命令在源代码构建,该命令将下载、修补、编译coreutils并生成文件。
# curl https://raw.githubusercontent.com/jarun/advcpmv/master/install.sh --create-dirs -o ./advcpmv/install.sh && (cd advcpmv && sh install.sh)
安装过程中可能会出现错误,检查mknod是否可以在没有 root 权限的情况下创建等。在终端上运行命令修复错误后再次运行curl命令:
# export FORCE_UNSAFE_CONFIGURE=1
# curl https://raw.githubusercontent.com/jarun/advcpmv/master/install.sh --create-dirs -o ./advcpmv/install.sh && (cd advcpmv && sh install.sh)
安装完成后,会在./advcpmv/advcp和./advcpmv/advmv下创建两个新命令,用这两个新命令替换之前cp和mv命令来获取在复制文件时进度条:
# mv ./advcpmv/advcp /usr/local/bin/cp
# mv ./advcpmv/advmv /usr/local/bin/mv
也可以在源目录运行如./advcpmv/advcp 和./advcpmv/advmv或创建新命令:
# mv./advcpmv/advcp /usr/local/bin/cpg
# mv./advcpmv/advmv /usr/local/bin/mvg
复制文件和目录时显示进度条需要在~/.bashrc文件中添加以下行:
# echo alias cp '/usr/local/bin/advcp -g' >> ~/.bashrc
# echo alias mv '/usr/local/bin/advmv -g' >> ~/.bashrc
需要重新退出再登录才能实现该功能。
Linux中使用Advanced-Copy命令,r选项是用于递归复制目录。如:
# cp -gR ubuntu-20.04.3-desktop-amd64.iso /home/tecmint/
或者
# cp -R --progress-bar ubuntu-20.04.3-desktop-amd64.iso /home/tecmint/
移动文件时显示进度条,如:
# mv --progress-bar Songs/ /data/
或
# mv -g Songs/ /data/
如果需要使用原始命令,或对新进度条不满意并想恢复到原始cp和mv命令,可通过/usr/bin/cp或/usr/bin/mv调用,不会覆盖原始命令。