Solved

Is there a linux command that I can issue to look for files whose size is larger than 1GB?

Posted on 2010-08-12
10
401 Views
Last Modified: 2013-12-16
I need to monitor my linux system for files that are larger than 1GB.  Is there a command line that I can issue to do that?  And does it run pretty fast?  
0
Comment
Question by:dgintz1217
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
10 Comments
 
LVL 7

Expert Comment

by:jhp333
ID: 33425113
find . -size 1G -print

where . is the starting directory.
0
 
LVL 23

Expert Comment

by:Maciej S
ID: 33425248
Above will show only 1GB files, not all larger than 1GB.
Try similar one:
find . -size +1G
(-print option is not necessary - it's used by default if no other expression is given).
0
 

Author Comment

by:dgintz1217
ID: 33425268
jhp333- could you help me out by putting that into a bash script that would list out the actual files (like with an ls -l) that only shows the file paths to files that are of that size.  when i ran the command above it gave me the directories as well:

[root@hotel:/var/spool]$find . -size 1G -print
.
./mail
./mail/airlink
./mail/root
./clientmqueue
./clientmqueue/dfn9TEU155002839
./cups
./cups/tmp
./at
./at/.SEQ
./at/a0000101392294
./at/spool
./mqueue
./anacron
./anacron/cron.monthly
./anacron/cron.daily
./anacron/cron.weekly
./repackage
./vbox
./bittorrent
./squid
./cron
./cron/al1
./cron/root
./lpd

And what i'm trying to get is something like this:

[root@hotel:/var/spool]$ls -l ./mail/airlink
-rw-rw---- 1 airlink mail 263336 2010-06-09 08:33 ./mail/airlink
[root@hotel:/var/spool]$ls -l ./mail/root
-rw------- 1 root root 259165938 2010-08-12 17:15 ./mail/root

Also, you can see by the above that those files are NOT 1G+ - did I do something wrong in my command?

Thanks!
0
Setting up LaraDock for Laravel

Learn how to set up LaraDock in a Laravel project - LaraDock gives us an easy way to run a Laravel application using Docker in a single command.

 
LVL 7

Assisted Solution

by:jhp333
jhp333 earned 333 total points
ID: 33425315
oklit is right. You need + befor 1G
And for the output format you wanted,

find . -size +1G -ls

Not sure why it shows files smaller than 1GB, it shouldn't.
0
 

Author Comment

by:dgintz1217
ID: 33425541
Yes, the + did the trick.  say, as a favor, can i ask if you could put together a small bash script here such that the output would not just be the file names, but an "ls -l" of the file names?
0
 
LVL 7

Accepted Solution

by:
jhp333 earned 333 total points
ID: 33425639
I already answered above for your "ls -l" question.

And for the incorrect size, try this:

find . -size +2097152 -ls

2097152 is number of blocks(512-byte block) for 1GB.
0
 
LVL 2

Assisted Solution

by:ramkumar_rkin
ramkumar_rkin earned 167 total points
ID: 33426866
Try this

find / -type f -size +1048576k -exec ls -lh {} \; | awk '{ print $9 ": " $5 }'

Output :
 find / -type f -size +1048576k -exec ls -lh {} \; | awk '{ print $9 ": " $5 }'
/proc/kcore: 8.1G
find: /proc/18573/task: No such file or directory
/rs08/u01/app/oragrid/p3731593_10205_Linux-x86-64.zip: 1.1G
0
 

Author Closing Comment

by:dgintz1217
ID: 33428987
This was a very great help and exactly what I was looking for!  Thanks!!!!
0
 
LVL 7

Expert Comment

by:jhp333
ID: 33432069
find utility itself has -printf option for formatting the output. You don't need awk for output formatting.

For example, to get the full path and the size, instead of -ls, use:
-printf "%p %s\n"

0
 

Author Comment

by:dgintz1217
ID: 33438490
Cool.  Didn't know that.  Thanks!
0

Featured Post

Why Off-Site Backups Are The Only Way To Go

You are probably backing up your data—but how and where? Ransomware is on the rise and there are variants that specifically target backups. Read on to discover why off-site is the way to go.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

I am a long time windows user and for me it is normal to have spaces in directory and file names. Changing to Linux I found myself frustrated when I moved my windows data over to my new Linux computer. The problem occurs when at the command line.…
It’s 2016. Password authentication should be dead — or at least close to dying. But, unfortunately, it has not traversed Quagga stage yet. Using password authentication is like laundering hotel guest linens with a washboard — it’s Passé.
Learn several ways to interact with files and get file information from the bash shell. ls lists the contents of a directory: Using the -a flag displays hidden files: Using the -l flag formats the output in a long list: The file command gives us mor…
This demo shows you how to set up the containerized NetScaler CPX with NetScaler Management and Analytics System in a non-routable Mesos/Marathon environment for use with Micro-Services applications.
Suggested Courses

617 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question