linux中为cp和mv命令添加进度条

安装高级复制补丁以在 Linux 中向 cp 和 mv 命令添加进度条

cp 和 mv 命令是GNU coreutils. 所以你需要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

现在两个新的补丁的二进制文件即cpmv将在中创建coreutils-9.0/src的文件夹。只需将它们复制到你的 $PATH 中,如下所示:

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

cpgmvg命令有现在进度条的功能。

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

$ cpg -g nifi-1.14.0-bin.tar.gz test/ 

或使用--progress-bar标志:

$ cpg --progress-bar nifi-1.14.0-bin.tar.gz test/ 

示例输出:

[root@rumenz.com ~]# cpg -g nifi-1.14.0-bin.tar.gz test/
Copying at 119.3 MiB/s (about 0h 0m 7s remaining)
nifi-1.14.0-bin.tar.gz                                                               959.5 MiB /   1.3 GiB
[============================================>                           ] 71.0 %

在复制过程结束时,你将看到复制了多少文件、复制文件所用的时间以及每秒的数据传输速率。

1 files (  1.3 GiB) copied in 25.5 seconds ( 53.0 MiB/s). 

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

$ cpg -gR directory1/ directory2/ 

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

$ mvg -g nifi-1.14.0-bin.tar.gz test/ 

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

$ mvg --progress-bar nifi-1.14.0-bin.tar.gz test/ 

要使用mv命令移动目录,请使用:

$ mvg -g directory1/ directory2/ 

你还可以创建别名。编辑~/.bashrc文件:

$ nano ~/.bashrc

在最后添加以下几行:

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

Ctrl+oCtl+x保存并关闭文件。

现在运行以下命令使更改生效:

$ source ~/.bashrc

从现在开始,你可以只使用没有(或)标志的cpmv命令。-g --progress-bar

请注意,原始程序不会被覆盖。你仍然可以随时通过/usr/bin/cp 或 呼叫他们 /usr/bin/mv

如果你经常复制或移动大量大文件和目录,推荐向cpmv命令添加进度条功能。

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/9057

(0)
郭靖的头像郭靖
上一篇 2023年6月15日 下午4:39
下一篇 2023年6月16日 下午4:40

相关推荐

  • MySQL 用户管理和权限管理

    在项目中,一个数据库有很多人需要使用,不能所有的人都使用相同的权限,如果人比较多,一人一个用户也很难管理。一般来说,会分超级管理员权限,管理员权限,读写权限,只读权限等,这样方便管理。当然,具体怎么管理权限根据实际情况来确定。无论如何,都需要创建多个用户来管理权限。root 是数据库的超级管理员用户,对于普通开发人员来说,权限太大了,如果不小心做了一些不可逆…

    2022年6月9日
    1.8K00
  • Ubuntu20.04 Server版安装图形界面并使用VNC实现远程桌面

    一:Ubuntu端 1、进行VNC设置之前,需要有图形界面,没有的可以执行以下代码安装图形界面 2、如上图所示运行后进入安装程序,进入GUI界面,通过控制“↑”“↓” 找到Ubuntu desktop按空格键选中,再按Tab键跳到OK选项回车!此处等待时间较长,然后重启开机,开机若未进入图形界面则需查看第四步是否配置完成,若未完成则需要再次执行此步骤。成功后…

    2022年7月12日
    6.1K00
  • 统一身份认证系统 OpenLDAP 完整部署

    LDAP 介绍LDAP 是什么?在那些地方用会用到 LDAP?LDAP英文名称:Lightweight Directory Access Protocol 轻型目录访问协议。常用在单点登录,用户可以通过一个用户和密码登录多个服务,方便管理。目前我们使用的一下工具,Jenkins,GitLab,Jumpserver,Grafana,Confluence,Nex…

    2023年12月11日
    1.3K00
  • linux(Mac)下查看文件编码及修改编码

    查看文件编码 在Linux中查看文件编码可以通过以下几种方式: 1. 在Vim中可以直接查看文件编码 即可显示文件编码格式。如果你只是想查看其它编码格式的文件或者想解决用Vim查看文件乱码的问题,那么你可以在~/.vimrc 文件中添加以下内容: 这样,就可以让vim自动识别文件编码(可以自动识别UTF-8或者GBK编码的文件),其实就是依照 fileenc…

    2023年8月15日
    1.8K00
  • cobbler搭建

    什么是cobbler Cobbler是一个Linux系统安装的服务,可以通过网络启动(PXE)的方式来快速安装、重装物理服务器和虚拟机,同时还可以管理DHCP,DNS等。 Cobbler可以使用命令行方式管理,也提供了基于Web的界面管理工具(cobbler-web),还提供了API接口,可以方便二次开发使用。 Cobbler是较早前的kickstart的升…

    2022年11月26日
    1.5K00

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信