如何優雅的給 cp 和 mv 命令新增一個高顏值的進度條
導讀 | 文主要介紹如何使用 Github 上的開源專案 advcpmv 來實現 中的 「cp」 和 「mv」 的進度條。 |
由於 cp 和 mv
都是屬於 coreutils 工具包下的,因此我們的主要操作就是在編譯 coreutils 的時候加入補丁從而實現進度條功能。
# 注意儘量不要使用 root 使用者操作 $ pwd /home/tinychen # 下載coreutils $ wget $ tar -xJf coreutils-8.32.tar.xz $ cd coreutils-8.32/ # 下載 github 上的補丁 $ wget # 打補丁,實現進度條顯示 $ 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 [========================================================================>
原文來自:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2909130/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 清新優雅&高顏值!一個基於Vue3實現的後臺管理模板Vue
- Linux 常用基本命令 cp mvLinux
- wkwebView 新增 進度條WebView
- 如何優雅的提交一個表單
- Linux命令學習(mkdir,cp,mv,rm,ln)Linux
- 如何優雅的停止一個執行緒?執行緒
- 前端如何優雅的新增水印及去除水印前端
- iOS WKWebView新增進度條02iOSWebView
- 用 jQuery 和 Bootstrap 在 WordPress 中新增進度條jQueryboot
- 寫一個酷炫的iOS進度條動畫iOS動畫
- 如何優雅的封裝一個DOM事件庫封裝事件
- 如何設計一個優雅的心跳機制
- 如何自定義一個優雅的ContentProviderIDE
- 如何做一個優雅的提問者
- 在命令列上輸出進度條的原理命令列
- 兩個高效的cp 命令用法!
- cp 命令兩個高效的用法
- 六個優雅的 Linux 命令列技巧Linux命令列
- 一個好的產品經理如何把控專案進度和跟進進度
- Android 編寫一個帶進度條的WebviewAndroidWebView
- 命令列進度條實現命令列
- zabbix 番外篇 一個高顏值的繪圖grafana繪圖Grafana
- 每天一個 Linux 命令(7):mv命令Linux
- 每天一個 Linux 命令(7):mv 命令Linux
- 如何優雅的對UITableView進行解耦UIView解耦
- 【UWP】實現一個波浪進度條
- 如何優雅的在 vue 中新增許可權控制Vue
- 每天一個 Linux 命令(8):cp 命令Linux
- 常用命令--複製-備份--cp--mv--scp--rsync
- 如何優雅地列印一個Java物件?Java物件
- 【新特性速遞】進度條,進度條,進度條
- Flutter和Rust如何優雅的互動FlutterRust
- 分享一個高顏值的技術社群 HackerTalk黑客說黑客
- laravel自定義命令列印進度條Laravel命令列
- nodejs學習之使用nodejs實現rm/cp/mv命令NodeJS
- 如何構建一個優雅擴充套件套件
- (轉) Android 優雅的為RecyclerView新增HeaderView和FooterViewAndroidViewHeader
- Linux下mv命令高階用法Linux