Sum up files whose size Kbytes and Mbytes


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Sum up files whose size Kbytes and Mbytes
# 1  
Old 03-22-2010
Sum up files whose size Kbytes and Mbytes

Hello Friends,

When i type
Code:
du -sh *.jar | sort -n

under a library directory i get a result similar below output:

Code:
   1M    1.jar
2.4M     2.jar
4.5M     3.jar
     .      .
     .      .
     .      .
    1K   (n-2).jar
  15K    (n-1).jar
77.7K     n.jar

I want to sum up the size of all files in terms of Kbytes or bytes, i wrote this code, but im not sure if this is the optimum way to do it with awkSmilie, i need your modification or comments.

Code:
du -sh *.jar |nawk '{sub("K$","",$1); a+=$1}{sub("M$","",$1); b+=$1*1000}END{printf "%12d\n",s=a+b}'

# 2  
Old 03-22-2010
First, you'll be getting a wrong result, as the GNU version of df (the only I know that supports the '-h' switch) uses the binary correct 1024 (=2^10) as the multiplicand, not 1000.

Second, if you want KiB, why not use the appropriate switch, and then sum it:
Code:
du -ks *.jar | sort -n | awk '{print; total+=$1;}END{print total}'

It's even portable
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How to get CRC check sum of files in java EAR file without extracting .jar/.war files to disk.?

unzip -v gives CRC info of each file in a zip(in my case .EAR) file. # unzip -v my-application.ear Archive: my-application.ear Length Method Size Cmpr Date Time CRC-32 Name -------- ------ ------- ---- ---------- ----- -------- ---- 197981 Defl:N 183708 7%... (1 Reply)
Discussion started by: kchinnam
1 Replies

2. Shell Programming and Scripting

Soft kill a process to redirect the last kbytes output to a file

Hey guys, I have a python script that I call with this line: python mypythonscript.py >> results.csv &The problem is that the redirection from the stdout to the file results.csv only writes 4096 kbyte blocks. So if i kill this process with kill the last kbytes that the script produce will... (6 Replies)
Discussion started by: Mastaer
6 Replies

3. Shell Programming and Scripting

Script - SUM SIZE

Hello, I need help. I working a a script that will get back directory size. I am on linux. I am using du -sk to get the size of directories. But, as the script is launch under nagios, i need to find a work aound to get rid of time out issue due to the large amount of files in one of... (1 Reply)
Discussion started by: Aswex
1 Replies

4. UNIX for Dummies Questions & Answers

How to get the set of files size as a sum in a directory.

Hi, Can someone help me to get the complete files size (sum) over a perod time (1 day,2days)in a directory. eg: Directory :ABC I have a1,a2,a3 files are created in last 24 hours so I need to get the some of all these files. I am using the below find command but its giving me the... (1 Reply)
Discussion started by: gaddamja
1 Replies

5. UNIX for Advanced & Expert Users

size for sum variable limitation on awk

Hello first, truth been told, I'm not even close to be advanced user. I'm posting here because maybe my question is complicated enough to need your expert help I need to use awk (or nawk - I don't have gawk) to validate some files by computing the total sum for a large numeric variable. It... (1 Reply)
Discussion started by: cwitarsa
1 Replies

6. Shell Programming and Scripting

Sum of file size in directory / subdirectory

Hi , I am trying to write something to find the size of particular type of files in a directory & it's subdirectory and sum the size .. These types of file are found at directory level or its subdirectories level .. #!/bin/ksh FNAME='.pdf' S_PATH=/abc/def/xyz find $S_PATH -exec ls -lad... (4 Replies)
Discussion started by: Vaddadi
4 Replies

7. Solaris

calculate sum size of files by date (arg list too long)

Hi, I wanted a script to find sum of files for a particular date, below is my script ls -lrt *.req | nawk '$6 == "Aug"' | nawk '$7 == "1"'| awk '{sum = sum + $5} END {print sum}' However, i get the error below /usr/bin/ls: arg list too long How do i fix that. Many thanks before. (2 Replies)
Discussion started by: beginningDBA
2 Replies

8. Shell Programming and Scripting

How to traverse directory structure and sum size of files?

How do I write a bash or ruby or perl or groovy script to print all the files in my directory tree that are one-to-two years old, the size of each file, and the sum of file sizes and then delete them? I was using find . -atime +365 -exec rm '{}' \; but the problem was that I could not... (5 Replies)
Discussion started by: siegfried
5 Replies

9. Shell Programming and Scripting

Function SUM SIZE

Dear Friends, I wrote a script that get the size of specific files in a specific space directory. To get the total size I wrote a function in that script. So far I am not convinced that function is working correctly. Do you mind tell if there is anything wrong. I am on SOLARIS (KSH)... (4 Replies)
Discussion started by: Aswex
4 Replies

10. Shell Programming and Scripting

bash script working for small size files but not for big size files.

Hi, I have one file stat. Stat file contents are as follows: for example. H50768020040913,00260100,507680,13,0000000643,0000000643,00000,0000 H50769520040808,00260100,507695,13,0000000000,0000000000,00000,0000 H50770620040611,00260100,507706,13,0000000000,0000000000,00000,0000 Now i... (1 Reply)
Discussion started by: davidpreml
1 Replies
Login or Register to Ask a Question