How to Get the Size of a Directory from the Command Line in Ubuntu
Answer: Use the
You can use the
du command (short for "disk usage") to get the size of directory from the command line in Ubuntu. It basically summarize disk usage of the set of FILEs, recursively for directories.
For example, if your current working directory is
/var/www and you want to determine the size of directory named
assets inside of it, you can simply use the command:
Or, if you prefer absolute path you can run the following command.
Both commands will have the same effect, because current working directory doesn't matter when you use absolute path. Any path that starts with a forward slash
/ is an absolute path.
The options have the following meanings:
-h: Human readable.
duwill print sizes in human readable format (e.g., 1K, 150M, 2G).
duwill only display the total size of the specified directories.
du will not only display the size of the specified directory, but also the size of the subdirectories inside of that directory separately.
Alternatively, you can use the
-a option with the
du command to get the disk space used by each file as well as subdirectories within the specified directory.
Moreover, if you want to display all files and subdirectories in a directory sorted by size you can use the
sort command along with the
du command like this:
Here, the option
sort command will reverse the default sorting order (i.e., bigger files and directories will be listed first), whereas the option
-h specify human numeric sort.
If you do not specify any file or directory,
du will report the disk usage of current working directory.
Tip: If you run
du command on a file or directory for which you don't have permissions, you will see something like this "du: cannot read directory". In this situation, you'll have to prepend the
du command with
sudo, for example,
sudo du -hs /path/to/directory.
Here are some more FAQ related to this topic: