This page will show us how to create a list of files and folders ordered by size using standard Linux commands.


To get a list with the size of each item in a folder, you’ll want to use the du command like this:

du -sm *

The -m argument will return the listing in megabytes (note that you can use -h for human readable, but it won’t sort correctly)

Now we will want to run this through the sort command, sorting in reverse order -r and numeric -n:

du -sm * | sort -nr

The only problem here is that we’ll get way too much output if there are a lot of files and folders, so we can either pipe it through the more command:

du -sm * | sort -nr | more

Or we can just return the top 15 largest items:

du -sm * | sort -nr | head -15

This will return a listing something like this:

2907    Files1
993     Files2
38      Somefile.txt
Profile Photo for Lowell Heddings Lowell Heddings
Lowell is the founder and CEO of How-To Geek. He’s been running the show since creating the site back in 2006. Over the last decade, Lowell has personally written more than 1000 articles which have been viewed by over 250 million people. Prior to starting How-To Geek, Lowell spent 15 years working in IT doing consulting, cybersecurity, database management, and programming work.
Read Full Bio »