統計子目錄大小的shell指令碼(轉)
統計子目錄大小的shell指令碼(轉)[@more@]#/bin/sh
#
# File: totalsize.sh
# Use : show the size of the files and sub directories
#
if [ $# -gt 0 ]
then
echo "Usage: $totalsize.sh (Note: no arguments)"
exit
fi
bgntime=`date +%s`
tmpval=$1
totalsize=0
totalsizedir=0
echo "1) Files"
echo " MB KB File"
echo "------------------------------------------------------------------------"
#NF the nums of fields per row
ls -l $1 |grep -v ^d |sort -n +4 |awk '(NF > 2){totalsize=totalsize+$5;printf "%14.3fM %14.3fK %s ",$5/1024/1024M,$5/1024,$NF} END{ printf "------------Total:%fM-------------",totalsize/1024/1024}'|sed 's:/.*/([^/]{1,})$:1:g'
echo
echo
echo "2) Dirs"
echo " MB KB Directories"
echo "------------------------------------------------------------------------"
du $1 --max-depth=1 | sort -n|awk '$2!="." {totalsizedir=totalsizedir+$1;printf "%14.3fM %14.3fK %s ",$1/1024,$1,$2} END{printf "--------------Total: %fM--------------- ",totalsizedir/1024 }'|sed 's:/.*/([^/]{1,})$:1:g'
endtime=`date +%s`
echo "Total Time: $(($endtime-$bgntime))s"
#
# File: totalsize.sh
# Use : show the size of the files and sub directories
#
if [ $# -gt 0 ]
then
echo "Usage: $totalsize.sh (Note: no arguments)"
exit
fi
bgntime=`date +%s`
tmpval=$1
totalsize=0
totalsizedir=0
echo "1) Files"
echo " MB KB File"
echo "------------------------------------------------------------------------"
#NF the nums of fields per row
ls -l $1 |grep -v ^d |sort -n +4 |awk '(NF > 2){totalsize=totalsize+$5;printf "%14.3fM %14.3fK %s ",$5/1024/1024M,$5/1024,$NF} END{ printf "------------Total:%fM-------------",totalsize/1024/1024}'|sed 's:/.*/([^/]{1,})$:1:g'
echo
echo
echo "2) Dirs"
echo " MB KB Directories"
echo "------------------------------------------------------------------------"
du $1 --max-depth=1 | sort -n|awk '$2!="." {totalsizedir=totalsizedir+$1;printf "%14.3fM %14.3fK %s ",$1/1024,$1,$2} END{printf "--------------Total: %fM--------------- ",totalsizedir/1024 }'|sed 's:/.*/([^/]{1,})$:1:g'
endtime=`date +%s`
echo "Total Time: $(($endtime-$bgntime))s"
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10617542/viewspace-945640/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- redis裡顯示key大小的shell指令碼Redis指令碼
- [轉]寫好shell指令碼的13個技巧指令碼
- Shell 指令碼程式設計陷阱指令碼程式設計
- shell指令碼指令碼
- 關於.gitignore怎麼保留子目錄的子目錄這件事Git
- shell指令碼程式設計筆記指令碼程式設計筆記
- 7.shell指令碼程式設計指令碼程式設計
- Shell指令碼程式設計規範與變數(shell指令碼必須要知道的規矩!)指令碼程式設計變數
- Shell程式設計-01-Shell指令碼初步入門程式設計指令碼
- linux常用的shell指令碼Linux指令碼
- shell指令碼案例指令碼
- 常用shell指令碼指令碼
- Linux Shell指令碼Linux指令碼
- shell指令碼(6)-shell陣列指令碼陣列
- Shell 系統資訊監控指令碼指令碼
- Linux shell程式設計(一)shell指令碼中的變數詳解Linux程式設計指令碼變數
- 【學習】Linux Shell指令碼程式設計Linux指令碼程式設計
- [轉]Shell向Perl指令碼中傳遞變數的方法指令碼變數
- 程式碼上線的shell指令碼指令碼
- 使用批處理指令碼修改指定資料夾(可包含子目錄)中的檔名字尾指令碼
- shell高效程式設計:shell指令碼從未如此美麗程式設計指令碼
- linux shell指令碼中 =~ 的作用Linux指令碼
- shell 指令碼加密 | shc指令碼加密
- 執行shell指令碼指令碼
- Shell 指令碼語句指令碼
- 初識shell指令碼指令碼
- 【指令碼】shell語法指令碼
- shell 指令碼寫法:指令碼
- 如何加密shell指令碼加密指令碼
- shell指令碼總結指令碼
- golang編寫程式時,shell在子目錄批量執行go mod tidyGolang
- Linux Shell指令碼程式設計-基礎1Linux指令碼程式設計
- 什麼是Shell指令碼?Shell指令碼在Linux運維工作中的地位!指令碼Linux運維
- Linux shell:執行shell指令碼的幾種方式Linux指令碼
- iOS逆向 Shell指令碼+指令碼重簽名iOS指令碼
- Shell指令碼——Linux系統中的時間猜數字指令碼Linux
- Linux系統中Shell指令碼編寫的一點心得Linux指令碼
- 編寫shell指令碼的規範指令碼
- 幾例實用的Shell指令碼指令碼