DEV Community

Cover image for Useful commands to check directories and files size
Paul Isaris
Paul Isaris

Posted on • Edited on

33 6

Useful commands to check directories and files size

Often times, there is a need to check the size of directories or files in a project, or to evaluate the space a directory occupies in a live/development server, or just at our local machine.

Here is a list of useful commands that you can leverage to make sure the available disk space of your machine is normal and that the huge node_modules directory size of your project hasn't gone crazy :D

We will use the du command, which is explained below:

du (disc usage) command estimates file_path space usage

The options -sh are (from man du):

  -s, --summarize
         display only a total for each argument

  -h, --human-readable
         print sizes in human readable format (e.g., 1K 234M 2G)

To check more than one directory and see the total, use du -sch:

  -c, --total
         produce a grand total

So, let's see the basic commands:

Shows you the size of the directory in readable format:

$ du -sh directory/

Shows you a list with all the directories along with their sizes, ordered by size:

$ du -sh * | sort -h

Example in my example flutter project:

paul@paul-Inspiron-N5110:~/projects/flutter_test$ du -sh * | sort -h
4,0K    android.iml
4,0K    flutter_test_android.iml
4,0K    flutter_test.iml
4,0K    pubspec.yaml
4,0K    README.md
8,0K    test
12K lib
200K    android
212K    ios

Also, if you want to include hidden files and directories, you can run:

$ du -sch .[^.]* * |sort -h

Bonus:

Outputs the total and available size of your system's paritions

$ df -h

Outputs the inodes usage in your system:

$ df -i

If you have more useful commands to share, leave them in the comments below!

Billboard image

The fastest way to detect downtimes

Join Vercel, CrowdStrike, and thousands of other teams that trust Checkly to streamline monitoring.

Get started now

Top comments (9)

Collapse
 
vinayhegde1990 profile image
Vinay Hegde • Edited

While du is the good old-school way to learn, I prefer ncdu which from my experience is faster to calculate disk utilization and saves you the hassle of remembering or grepping the shell history to input multiple pipe-separated commands.

A lucidly explained guide on how to obtain & use it can be read here

Collapse
 
pavlosisaris profile image
Paul Isaris • Edited

Thanks, haven't heard of that until now! I will definitely use it.

Collapse
 
phlash profile image
Phil Ashby

If you're missing out on the fun in a Windows environment but have Powershell handy a colleague & I hacked together this equivalent a while back: gist.github.com/PhlashGBG/0a10d2c9...

Collapse
 
pavlosisaris profile image
Paul Isaris

Nice tool, thanks!

Collapse
 
bambam82 profile image
Bart Dorlandt

Do you have a trick to do this for hidden subdirectories as well? Without including the upstream directory?

Collapse
 
pavlosisaris profile image
Paul Isaris

Hmm, I think you could use something like
du -sch .[!.]* * |sort -h

Collapse
 
bambam82 profile image
Bart Dorlandt

Thanks Paul. It didn't work exactly (or at least not with zsh), but it got me going.

My result:

du -sch .[^.]* * |sort -h
Collapse
 
joshcheek profile image
Josh Cheek

Great tips!

Collapse
 
pavlosisaris profile image
Paul Isaris

Didn't know, that, thanks! :)

Image of Docusign

🛠️ Bring your solution into Docusign. Reach over 1.6M customers.

Docusign is now extensible. Overcome challenges with disconnected products and inaccessible data by bringing your solutions into Docusign and publishing to 1.6M customers in the App Center.

Learn more

👋 Kindness is contagious

Discover a treasure trove of wisdom within this insightful piece, highly respected in the nurturing DEV Community enviroment. Developers, whether novice or expert, are encouraged to participate and add to our shared knowledge basin.

A simple "thank you" can illuminate someone's day. Express your appreciation in the comments section!

On DEV, sharing ideas smoothens our journey and strengthens our community ties. Learn something useful? Offering a quick thanks to the author is deeply appreciated.

Okay