tar解壓過程中在console顯示簡易進度條

2021-07-13 05:37:43 字數 1194 閱讀 9582

本指令碼用於在tar命令解壓檔案過程中,在console中顯示簡易的進度條,是根據解壓出的檔案總的大小和當前已經解壓的檔案大小來進行進度的顯示,程式比較簡易,普適性不是太強,很多變數可以以引數形式傳遞,這裡不加優化,僅供作為筆記和參考而已

#!/bin/sh

#顯示進度的總格數

total_process=100

#當前進度格數

current_process=0

#百分比

percent=0

#檔案大小

total_size=455000

#當前檔案大小

current_size=0

#用於記錄上一次的進度

old_process=0

print_progress ()

-$))

if [ $ -lt 0 ]; then

incomplete_process=0

current_process=$

percent=100

fi#輸出已公升級部分,用》表示

printf "\rprogress:[%.$d" | tr '0' '>'

#輸出未公升級部分,用' '表示

printf "%.$d]" | tr '0' ' '

#輸出當前百分比

printf "$%%"

}display ()

') percent=$(($/($/100)))

# echo $

current_process=$(($\*$/100))

# echo $

if [ $ -eq 0 ]; then

print_progress

elif [ $ -ne $ ]; then

print_progress

old_progress=$

fi#以tar程序結束來結束本程序

ps -ef | grep "tar jxvf" | grep -v "grep" > /dev/null

if [ $? -ne 0 ]; then

echo "update over"

break

fidone

}tar jxvf file.tar.gz -c ./target > /dev/null &

display

在儲存過程中實現事務

在圖書館管理系統中系統管理員可以進行的操作有 借 還 新增 刪除 修改圖書或新增 刪除 修改讀者等,很多的操作都涉及到多個表的進行,我們一定要保持資料的一致性。如 刪除讀者 操作,會在讀者表 reader 中進行讀者的刪除,該讀者刪除後,借書表 reader book 也沒有必要再保留該讀者的借書記...

sqlserver中在儲存過程中寫事務

由於對資料的操作經常需要併發,所以在儲存過程中使用事務是非常必要的,我經常這樣處理 if exists select from sys.objects where name sp drop proc sp gocreate procedure sp 引數列表.out bit 0 output 輸出引...

在測試的過程中的效率

在測試的過程中,效率低下是乙個重要問題,經常表現在 bug重 現重複提交 發現bug,但描述資訊不詳細 存在不量的bug不被發現 這主要是因為沒有寫測試用例,分工不詳所造成。沒有寫測試用例。每個人都自己亂點,碰運氣式的測試。結果就是,潛在大量的bug不被發現,小量的bug被重 現 測試人員沒有範圍。...