Find the sum of files created 5 days before


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Find the sum of files created 5 days before
# 1  
Old 02-01-2012
Find the sum of files created 5 days before

Hi,

I want to find the sum of all the files created 5 days ago and store it in a variable. (os is HP-UX)

can this be extracted from ls -l

Is there any other way of getting the sum of all the files created
# 2  
Old 02-01-2012
sum of what - file size?
Code:
find /path/to/files -type f \( -mtime -5 -a -mtime +4 \)  -exec ls -s {} \; | awk '{sum+=($1 * 4096); END{print sum}'

I haven't been on HPUX in several years - the block size of files may not be 4096, you can determine that with
Code:
df /path/to/files

# 3  
Old 02-01-2012
@jim@mcnamara
Block size in HP-UX is 512 bytes.

Not sure that "find" works because the two "-mtime" values are convergent.
Maybe you meant:
Code:
find /path/to/files -type f \( -mtime -6 -a ! -mtime -5 \)      ...

This will still give different results depending on what time of day it is run.

@bang_dba
Post is really ambiguous. Please explain and give examples with real dates of what files are included in the query (including examples of large files and of files created at various times of the day). Please also explain what it is you want to "sum".
# 4  
Old 02-02-2012
- ve values

I am using the following code to get the result. But some how i am getting -ve values. Not sure why this is happening.


Code:
#!/bin/ksh
u05=0
for k in `find /u05/backup/ -type f -mtime -5 -print -exec ls -l {} \+ | awk '{print $5}';`
do
   u05=$((u05+k))
   echo $k
   echo $u05
echo "---------"
done
echo "Total file size is $u05"

Output

Code:
750
750
---------
11116650496
-1768250642
---------
11595284480
1237099246
---------
13440557056
1792754414
---------
10975354880
-116792594
---------
8705179648
-1547538
---------
9481904128
890421998
---------
--
---
----
----
Total file size is 1934451438

# 5  
Old 02-02-2012
The largest number which can be used in Shell arithmetic is:
((2*1024*1024*1024) -1 ) = 2147483647
In file size terms this is fractionally under 2 Gb.
The "expr" command has the same problem.

Your number 11116650496 is just over 10 Gb and too large for Shell arithmetic.

You'll need to use "bc" or "awk" for the arithmetic.
This User Gave Thanks to methyl For This Post:
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

what is the find to command to find the files created last 30 days

what is the find to command to find the files created last 30 days (5 Replies)
Discussion started by: rajkumar_g
5 Replies

2. Shell Programming and Scripting

Find unix file created how many days ago?

i want to find unix file created how many days ago? (4 Replies)
Discussion started by: utoptas
4 Replies

3. UNIX for Dummies Questions & Answers

How to find files created some days before?

HI, I have 2 questions. 1> Is there any code to see files that created some day or some time before in a directory??? 2> how or where i will find the last exit status of a process?? thanks (6 Replies)
Discussion started by: jyotidas
6 Replies

4. Shell Programming and Scripting

Find directories only and delete them created 3 days before

Hello I have some directories and files created under /export/local/user I would like to delete directories only under /export/local/user, created before 3 days Can someone help me with command to do this task? Thanks (4 Replies)
Discussion started by: needyourhelp10
4 Replies

5. Shell Programming and Scripting

find files created within 30 minutes

find . -name *.txt -mmin -30 This is working in Redhat but not in Solaris.. What is the equivalent option in Solaris? (1 Reply)
Discussion started by: tene
1 Replies

6. Shell Programming and Scripting

Find the directory modified/created before 4 days

Hi, I have an application which creates some directories while running. I want to delete these directories which are 4 days older. i tried find . type d -mtime +1 -print And it is working fine.. but find . type d -mtime +4 -print is not giving any results which are 4 days... (6 Replies)
Discussion started by: Tuxidow
6 Replies

7. Shell Programming and Scripting

Remove files which created date before 10 days on HP-UX

Hi All, Could you please let me know if there is any one can help to create a shell script to remove some files which is the created date for them greate than 10 days (sysdate-10) Please try to email me on email removed Thanks in advance, Murad (1 Reply)
Discussion started by: murad_fayez
1 Replies

8. Shell Programming and Scripting

List files created before Noon 2 days prior

Our nightly updates run in the evening and finish around 8am. My boss wants the current log files kept on the server for 2 days, but wants anything created before noon, 2 days prior archived. I was thinking of using touch to set a temporary file with a date of today-2 and a time of noon, then... (3 Replies)
Discussion started by: prismtx
3 Replies

9. Shell Programming and Scripting

Find files older than 20 days & not use find

I need to find files that have the ending of .out and that are older than 20 days. However, I cannot use find as I do not want to search in the directories that are underneath the directory that I am searching in. How can this be done?? Find returns files that I do not want. (2 Replies)
Discussion started by: halo98
2 Replies

10. UNIX for Dummies Questions & Answers

Deleting files created before two days ago

Dear All: I want to build a shell that delete files created two or more days ago ... I think it could be built using a special command with ls or grep, I'd apreciate any help from you guys I have a lot of log files from november, december, january and this tool will help me a lot The files... (3 Replies)
Discussion started by: josecollantes
3 Replies
Login or Register to Ask a Question