linux mv 遞歸拷貝,奇技淫巧 - 給Linux中的cp和mv命令中添加進度條的高級拷貝

GNU cp和GNU mv命令用于在GNU/Linux操作系統中復制和移動文件和目錄。這兩個命令缺少的一個特性是它們不顯示任何進度條。如果復制一個大文件或目錄,您就不知道完成復制過程需要多長時間,也不知道復制的數據所占的百分比。還有您將看不到當前正在復制哪個文件或者已經復制了多少個文件。你將看到的只是閃爍的光標和硬盤驅動器LED指示燈。多虧了Advanced Copy (Gnu Coreutils的一個補丁),我們現在可以在Linux中的cp和mv命令中添加進度條,并在復制和/或移動大文件和目錄時顯示進度條。

高級拷貝(Advanced Copy)是GNU cp和GNU mv程序的一個模塊。它會添加一個進度條,并提供一些有關復制或移動文件和文件夾時發生情況的信息。不僅是進度條,它還顯示數據傳輸速率、估計剩余時間和當前正在復制的文件名。最后,您將看到一個簡短的摘要,說明復制了多少個文件以及復制這些文件所用的時間。

1566f0d736ed331dfa404abca147c5bc.png

安裝“Advanced Copy”補丁,將進度條添加到Linux的cp和mv命令中

cp和mv命令是GNU coreutils的一部分。所以你需要從這里下載最新的GNU源代碼。

linuxmi@linuxmi:~/www.linuxmi.com$?wget?http://ftp.gnu.org/gnu/coreutils/coreutils-8.32.tar.xz

使用命令解壓下載檔案:

linuxmi@linuxmi:~/www.linuxmi.com$?tar?xJf?coreutils-8.32.tar.xz

這個命令將在當前目錄中提取一個名為coreutils-8.32的文件夾中的coreutils存檔。cd進去:

linuxmi@linuxmi:~/www.linuxmi.com$?cd?coreutils-8.32/

使用以下命令下載Advanced Copy補丁:

linuxmi@linuxmi:~/www.linuxmi.com/coreutils-8.32$?wget?https://raw.githubusercontent.com/jarun/advcpmv/master/advcpmv-0.8-8.32.patch

abafbc1fbfff4eef228f7742c2cd3eaf.png

最后,通過逐個運行以下命令應用補丁:

linuxmi@linuxmi:~/www.linuxmi.com/coreutils-8.32$?patch?-p1?-i?advcpmv-0.8-8.32.patch

linuxmi@linuxmi:~/www.linuxmi.com/coreutils-8.32$?./configure

327a04984d5774a65af942934463382b.png

linuxmi@linuxmi:~/www.linuxmi.com/coreutils-8.32$?make

14a0dcdcfd03f579a6e4b1c37eabc9b9.png

現在將在coreuths -8.32/src文件夾中創建兩個新的補丁二進制文件cp和mv。只需像下面這樣將它們復制到你的$PATH:

linuxmi@linuxmi:~/www.linuxmi.com/coreutils-8.32$?sudo?cp?src/cp?/usr/local/bin/cp

[sudo]?linuxmi?的密碼:

linuxmi@linuxmi:~/www.linuxmi.com/coreutils-8.32$?sudo?cp?src/mv?/usr/local/bin/mv

就這樣。cp和mv命令現在有了進度條功能。

當你在復制或移動文件和目錄時想要一個進度條,只需添加 -g 標簽,如下所示:

linuxmi@linuxmi:~/www.linuxmi.com$?cp?-g?/home/linuxmi/Fedora-Silverblue-ostree-x86_64-32-1.6.iso?/home/linuxmi/www.linuxmi.com/

或者使用 --progress-bar 標簽:

linuxmi@linuxmi:~/www.linuxmi.com$?cp?--progress-bar?/home/linuxmi/Fedora-Silverblue-ostree-x86_64-32-1.6.iso?/home/linuxmi/www.linuxmi.com/

樣例輸出如下圖:

16a45d01a297b660c2c68e9a0003ff8c.gif

在Linux中向cp和mv命令添加進度條

在復制過程的最后,您將看到復制了多少文件,復制文件花費了多長時間,以及每秒的數據傳輸速率。怎樣,很不錯吧?

1?files?(?2.5?GiB)?copied?in?42.0?seconds?(?61.1?MiB/s).

要遞歸復制一個目錄及其子目錄,只需添加-R標志:

$?cp?-gR?directory1/?directory2/

類似地,使用mv命令移動文件,運行:

$?mv?-g?archlinux.iso?mydownload/

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

$?mv?--progress-bar?archlinux.iso?mydownload/

使用mv命令移動目錄:

$?mv?-g?directory1/?directory2/

您還可以編輯~/.bashrc文件創建別名來節省幾個按鍵:

$?nano?~/.bashrc

在末尾添加以下幾行:

aliascp='/usr/local/bin/cp?-gR'

alias?mv='/usr/local/bin/mv?-g'

按Ctrl+o和Ctl+x保存和關閉文件。

現在運行以下命令使更改生效:

$?source?~/.bashrc

從現在開始,您可以只使用cp或mv命令,而不需要使用 -g (或 --progress-bar)標志。

請注意,原始程序沒有被覆蓋。您仍然可以在任何時候通過/usr/bin/cp或/usr/bin/mv調用它們

如果您經常復制或移動大量大文件和目錄,那么在cp和mv命令中添加進度條功能是個很好的方法。您現在可以看到在復制和移動文件時到底發生了什么,而不是時時盯著屏幕。

【編輯推薦】

【責任編輯:龐桂玉 TEL:(010)68476606】

點贊 0

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/394789.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/394789.shtml
英文地址,請注明出處:http://en.pswp.cn/news/394789.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

webgl 著色器_如何在WebAssembly中使用WebGL著色器

webgl 著色器by Dan Ruta通過Dan Ruta 在WebAssembly中使用WebGL著色器 (Using WebGL shaders in WebAssembly) WebAssembly is blazing fast for number crunching, game engines, and many other things, but nothing can quite compare to the extreme parallelization of …

【洛谷P1966】火柴排隊

兩列排序后將編號一一對應 歸并排序求逆序對 &#xff08;每一次交換就去掉一個逆序對&#xff09; 1 #include<cstdio>2 #include<cstring>3 #include<algorithm>4 #define ll long long5 using namespace std;6 const int N100100;7 const ll P99999997;8 …

python字符串補空格輸出_Python去除空格,Python中常見字符串去除空格的方法總結...

今天小編就為大家分享一篇關于Python去除字符串前后空格的幾種方法&#xff0c;小編覺得內容挺不錯的&#xff0c;現在分享給大家&#xff0c;具有很好的參考價值&#xff0c;需要的朋友一起跟隨小編來看看吧&#xff1a; Python去除空格方法一&#xff1a; strip()方法&#x…

Alan Walker MV 合輯01 by defender

Alan Walker MV合輯 出來啦&#xff01; 百度網盤下載地址&#xff1a; 鏈接&#xff1a;https://pan.baidu.com/s/10WSool70XBe_8tJOae8V-w 提取碼&#xff1a;uckq 地址查看Microsoft Onedrive Download Address:  BE DELETED Google Drive Download Address&#xff1a; …

scanf函數具體解釋與緩沖區

1.基本信息 函數原型&#xff1a; int scanf( char *format, args, ...); 函數返回值&#xff1a; 讀入并賦給args的數據個數。遇到文件結束返回EOF&#xff0c;出錯返回0。 函數功能&#xff1a; scanf函數是格式化輸入函數&#xff0c;它從標準輸入設備(鍵盤)讀取輸入的信息。…

linux中win文件轉為unix,如何將文本文件從Windows轉換為Unix

從Unix轉換到Windows時&#xff0c;我得到正確的輸出;但是&#xff0c;從Windows到Unix時&#xff0c;我得到了一些奇怪的輸出。我認為我必須允許的是刪除回車\ r。雖然這不起作用。當我運行代碼后打開文本文件時&#xff0c;我得到了一些奇怪的結果&#xff0c;第一行是正確的…

程序員偽造一年工作經驗_試火—如何偽造程序員

程序員偽造一年工作經驗2017年9月6日 (6 September 2017) Sweat is running down my face. I’m staring down a blank sublime text document. What on earth am I doing? My hands are resting above the keyboard of my MacBook pro.汗水順著我的臉。 我盯著一個空白的崇高…

在unity中設置多種怪物數據_Unity可編程渲染管線(SRP)系列(三)——光照(單通道 正向渲染)...

本文重點:1、漫反射著色2、支持方向光、點光源和聚光燈3、每幀允許16個可見光源4、每個對象最多計算四個像素光和四個頂點光這是涵蓋Unity可編寫腳本的渲染管線的教程系列的第三部分。這次&#xff0c;我們將通過一個Drawcall為每個對象最多著色8個燈光來增加對漫反射光照的支持…

Java內部類的定義和使用

為什么要用到內部類&#xff1a; 在java開發學習中我們經常會碰到內部類。內部類又有很多的優勢&#xff1a;首先舉一個簡單的例子&#xff0c;如果你想實現一個接口&#xff0c;但是這個接口中的一個方法和你構想的這個類中的一個方法名稱參數相同&#xff0c;你應該怎么辦&am…

蛋清打發奶油狀

在做蛋糕、冰淇凌、面包之類的時候往往都需要奶油狀蛋清&#xff0c;讓蛋糕、面包更蓬松&#xff0c;冰激凌也可以使用其當做奶油來用。用料 雞蛋4個 根據用量選擇鹽(只做冰激凌用奶油放)5g(根據蛋量)白醋(可以不放&#xff0c;根據喜好)5g(根據蛋量)白砂糖40g(分三次放)根據…

react構建_您應該了解的有關React的一切:開始構建所需的基礎知識

react構建by Scott Domes由斯科特多姆斯(Scott Domes) 您應該了解的有關React的一切&#xff1a;開始構建所需的基礎知識 (Everything You Should Know About React: The Basics You Need to Start Building) Are you curious about React and haven’t had the chance to lea…

榮新linux培訓,51CTO博客-專業IT技術博客創作平臺-技術成就夢想

切換用戶 su - root文件夾管理 mkdir(新建文件夾) rmdir(刪除空目錄)文件管理 touch(新建文件) rm(刪除文件)rm -rf(刪除文件夾) cat(查詢文件)文件文件夾 mv(剪切文件) cp(復制文件)默認拷貝文件&#xff0c;cp -r 就可以拷貝文件夾啦批量建文件 touch /root/tes…

Educational Codeforces Round 33 (Rated for Div. 2) E. Counting Arrays

題目鏈接 題意&#xff1a;給你兩個數x,yx,yx,y,讓你構造一些長為yyy的數列&#xff0c;讓這個數列的累乘為xxx&#xff0c;輸出方案數。 思路:考慮對xxx進行質因數分解&#xff0c;設某個質因子PiP_iPi?的的冪為kkk,則這個質因子的貢獻就相當于把kkk個PiP_iPi?放到yyy個盒子…

《面向對象分析與設計》一第2章 什么是面向對象分析

第2章 什么是面向對象分析 面向對象分析&#xff08;ObjectOriented Analysis&#xff0c;OOA&#xff09;&#xff0c;就是運用面向對象方法進行系統分析。它是軟件生命周期的一個階段&#xff0c;具有一般分析方法所共同具有的內容、目標及策略。但是OOA強調運用面向對象方…

hql可以使用distinct嗎_輸送食品可以使用白色PVC輸送帶嗎?

食品&#xff0c;是給人們吃到肚子里的&#xff0c;因此不管在加工環節、制造環節還是其他環節&#xff0c;都需要做好食品的安全問題。根據不同的食品&#xff0c;其制造的環境也不同&#xff0c;所使用到的食品輸送帶的材質也是不一樣的&#xff0c;這些是需要根據輸送的食品…

htc one m7 linux驅動,HTC One M7官方RUU固件包(可救磚)

在網上找了找關于HTC One M7 (801e)的官方ruu固件包還不多&#xff0c;找了一些&#xff0c;不過有些不能下載&#xff0c;在這里整理了幾款可以下載的官方ruu包&#xff0c;這些包都是官方原版的&#xff0c;都是支持線刷的&#xff0c;大家可以下載下來備用了&#xff0c;也可…

emoji .png_根據我對3.5GB聊天記錄的分析,Emoji開發人員使用最多

emoji .pngby Evaristo Caraballo通過Evaristo Caraballo 根據我對3.5GB聊天記錄的分析&#xff0c;Emoji開發人員使用最多 (The Emoji developers use most — based on my analysis of 3.5GB of chat logs) Emoji have drastically changed the way we communicate in socia…

forward和redirect的區別

1.從地址欄顯示來說forward是服務器請求資源,服務器直接訪問目標地址的URL,把那個URL的響應內容讀取過來,然后把這些內容再發給瀏覽器.瀏覽器根本不知道服務器發送的內容從哪里來的,所以它的地址欄還是原來的地址.redirect是服務端根據邏輯,發送一個狀態碼,告訴瀏覽器重新去請求…

CF662C Binary Table(FWT)

[Luogu-CF662C] FWT_xor 題目描述 有一個 \(n\) 行 \(m\) 列的表格&#xff0c;每個元素都是 $0/1 $&#xff0c;每次操作可以選擇一行或一列&#xff0c;把 \(0/1\) 翻轉&#xff0c;即把 \(0\) 換為 \(1\) &#xff0c;把 \(1\) 換為 \(0\) 。請問經過若干次操作后&#xff0…

c語言fmin最小公倍數,matlab小函數

8種機械鍵盤軸體對比本人程序員&#xff0c;要買一個寫代碼的鍵盤&#xff0c;請問紅軸和茶軸怎么選&#xff1f;(記得按字母序索引)矩陣向量化操作A(:)拉成一個向量 ($a_{11},a_{21},…$)&#xff0c;注意先列后行repmat用途&#xff1a;創建由小型矩陣重復組合成的矩陣&#…