12

Is there any command that could show me the size of several folders in linux, perhaps ranked from biggest to smallest?

6 Answers 6

13

As others said, du is the way to go. But knowing the options to du is essential. Here they are:

du -m --max-depth 1 /foo /bar

This will give you the size in megabytes of the directories contained in /foo and /bar. If you want the output to be sorted, pipe it through the sort utility:

du -m --max-depth 1 /foo /bar | sort -n -k 1
2

Or you can pass:

du -sm /dir1 /dir2 | sort -nrk 1
#or
du -sm * | sort -nrk 1

The difference between the first and the second is that the sencond will pick all the files and dirs in the current directory and the first just the dirs you passed.

3
  • du -s and sort don't really like each other.
    – innaM
    Nov 11, 2009 at 13:04
  • I have yet to run into some kind of problem with these lines in any of my commonly used distros: openSUSE, Arch & Ubuntu. I concour that without the -m switch it would just mess the whole thing. =p
    – Mereghost
    Nov 11, 2009 at 13:33
  • Oh god! Sorry. I somehow mixed up -s and -h. Please disregard my comment.
    – innaM
    Nov 11, 2009 at 13:52
1

du [options] [directories and/or files]

1

If you would like a graphical (X11) display, consider installing xdiskusage. You can either pipe the output of du into it (as you might do if you're running du as another user, or on another system, or at another time), or you can run it interactively and it will invoke du for itself.

As usual, once it's installed, consult the man page.

0

use du in terminal.

0
0

From the command line I prefer to list the biggest last so I use:

du -shm ./* | sort -n

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .