配置cp、mv命令顯示進度和速度
Linux中cp和mv命令顯示進度條和速度
Linux中,cp和mv命令都是由coreutils軟件包安裝的。

在Linux中cp或者mv命令操作大文件時,會出現(xiàn)等待的過程,但這兩個命令都沒有提供可以查看命令進度的參數(shù),所以我們可以通過Github上的開源項目advcpmv來實現(xiàn)cp和mv命令在操作大文件的時候帶上進度條。
1. 創(chuàng)建普通用戶
全程必須使用普通用戶操作并配置sudo,如果用root用戶操作,后續(xù)編譯安裝會報錯。
# 創(chuàng)建普通用戶
useradd ord_user -g root
2. 配置sudo權(quán)限
切換到root用戶,命令行輸入?visudo
?,即可直接進入/etc/sudoers
?的編輯頁面。
visudo
忽略掉其他配置信息,直接查看底部如下信息:
解釋下每一列的含義:
第一列表示用戶名,如?
root
?、ubuntu
?等;第二列,等號左邊的?
ALL
?表示允許從任何主機登錄當前的用戶賬戶;第二列,等號右邊的?
ALL
?表示:第一列的用戶可以切換到系統(tǒng)中任何一個其它用戶;第三列,?
ALL
?表示:第一列的用戶能以root用戶的身份下達什么命令,ALL
?表示可以下達任何命令。

如下配置方式在執(zhí)行sudo時不需要提供密碼:(去掉NOPASSWD:
表示執(zhí)行sudo時需要提供密碼)

添加完畢,esc退出編輯,執(zhí)行:wq
,退出并保存。
3. 下載coreutils壓縮包和補丁包
上傳兩個文件到普通用戶家目錄下。
coreutils-8.32.tar.xz
advcpmv-0.8-8.32.patch

4. 編譯安裝
解壓壓縮包,要求必須有對應(yīng)的編譯軟件,如gcc等才能正常編譯。
tar xf coreutils-8.32.tar.xz
cd coreutils-8.32
mv ../advcpmv-0.8-8.32.patch .
patch -p1 -i advcpmv-0.8-8.32.patch
./configure




5. 復(fù)制cp和mv命令
將打補丁生成的cp和mv命令的二進制文件復(fù)制到/usr/local/bin/
目錄下,并設(shè)置命令別名。
sudo cp src/cp /usr/local/bin/cp
sudo cp src/mv /usr/local/bin/mv
echo "alias cp='cp -ig'" >> ~/.bashrc
echo "alias mv='mv -ig'" >> ~/.bashrc
source ~/.bashrc
alias


6. 創(chuàng)建大文件驗證
使用dd
命令創(chuàng)建一個5G的文件5g_test
,驗證命令可以顯示進度和速度,并且在命令操作完后還會顯示平均速度。
# 每次寫入1024k,分5120次寫入
dd if=/dev/zero of=5g_test bs=1024k count=5120
cp 5g_test 5g_test_cp
mv 5g_test /tmp


root用戶想要使用值需要切換root設(shè)置別名。
echo "alias cp='cp -ig'" >> ~/.bashrc
echo "alias mv='mv -ig'" >> ~/.bashrc
source ~/.bashrc
alias

落葉聚還散,寒鴉棲復(fù)驚。
鏈接:https://www.dianjilingqu.com/721145.html