首頁  >  文章  >  系統教程  >  Linux命令神器-cp和mv的妙用

Linux命令神器-cp和mv的妙用

PHPz
PHPz轉載
2024-02-10 15:30:24967瀏覽

在Linux作業系統中,檔案管理是最常見的操作之一。而常用的cp和mv指令,作為Linux中的檔案複製和移動工具,一直以來都是Linux用戶最熟悉的指令之一。但是,除了基本的複製和移動操作之外,這兩個指令還有哪些妙用呢?讓我們一起來探索。

文主要介紹如何使用 Github 上的開源專案 advcpmv 來實作 Linux 中的 “cp” 和 “mv” 指令的進度條。

Linux命令神器-cp和mv的妙用
# 由於 cp 和 mv 指令都是屬於 coreutils 工具包下的,因此我們的主要操作就是在編譯 coreutils 的時候加入補丁從而實現進度條功能。

# 注意尽量不要使用 root 用户操作
$ pwd
/home/tinychen

# 下载coreutils
$ wget http://ftp.gnu.org/gnu/coreutils/coreutils-8.32.tar.xz
$ tar -xJf coreutils-8.32.tar.xz
$ cd coreutils-8.32/

# 下载 github 上的补丁
$ wget https://raw.githubusercontent.com/jarun/advcpmv/master/advcpmv-0.8-8.32.patch
# 打补丁,实现进度条显示
$ patch -p1 -i advcpmv-0.8-8.32.patch
patching file src/copy.c
patching file src/copy.h
patching file src/cp.c
patching file src/mv.c

# 编译安装
$ ./configure
$ make
# 将打补丁生成的cp和mv命令的二进制文件复制到bin目录下
$ sudo cp src/cp /usr/local/bin/cp
$ sudo cp src/mv /usr/local/bin/mv

接著我們只要在使用 cp 和 mv 指令的時候加上 -g 參數就可以顯示進度條了,為了方便起見我們可以在 .bashrc 檔案中設定 alias

$ alias cp='cp -ig'
$ alias mv='mv -ig'

試試看實際效果,複製一個大資料夾的時候可以顯示總進度和目前檔案複製進度,以及複製完成之後還可以顯示複製的過程中的平均速度。

$ cp -r /samba/Elements02/kvm/* /kvm/

0 files copied so far...               
                                                                                                                  
    1.6 GiB /  67.2 GiB
[===>                                                                                                                                                                 
  ]  2.4 %
Copying at 178.4 MiB/s (about 0h 6m 45s remaining)
/samba/Elements02/kvm/iso/CentOS-6.10-x86_64-bin-DVD1.iso                                                                                                 
   1.6 GiB /   3.7 GiB
[========================================================================>

Linux命令神器-cp和mv的妙用
Linux命令神器-cp和mv的妙用

#總之,cp和mv作為Linux檔案管理中的彈性工具,有著多種強大的用法,能夠大幅提高Linux使用者的工作效率和便利性。本文介紹的只是其中的一部分,還有很多進階用法等待讀者去探索。在日常使用中,熟練這兩個命令可以讓我們更有效率地管理Linux系統內的各種文件。

以上是Linux命令神器-cp和mv的妙用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:lxlinux.net。如有侵權,請聯絡admin@php.cn刪除