Open In App

du Command in LINUX

Last Updated : 25 Sep, 2024
Comments
Improve
Suggest changes
Like Article
Like
Report

The du command in Linux is a powerful utility that allows users to analyze and report on disk usage within directories and files. Whether you’re trying to identify space-hogging directories, manage disk space efficiently, or simply gain insights into storage consumption, the du command provides valuable information.

Here, we’ll explore the du command, its basic syntax, and various examples to demonstrate its functionality.

Syntax

du [options] [directory/file]

Here,

  • [options]: various flags that modify the behavior of the command
  • [directory/file]: the target directory or file for which disk usage information is desired. If no directory or file is specified, du will default to the current directory.

Basic du Command Example

du /home/mandeep/test

Output:

44    /home/mandeep/test/data
2012    /home/mandeep/test/system design
24    /home/mandeep/test/table/sample_table/tree
28    /home/mandeep/test/table/sample_table
32    /home/mandeep/test/table
100104    /home/mandeep/test

Options available in du command in Linux

The du command offers a range of options that enhance its functionality. Let’s explore some commonly used options:

OptionDescription
-0, –nullEnd each output line with NULL.
-a or –allDisplays disk usage information for all files and directories, including hidden ones.
–apparent-sizePrint apparent sizes, rather than disk usage.
-B, –block-size=SIZEScale sizes to SIZE before printing on console.
-c or –totalShows the total disk usage in addition to individual usage for directories and files.
-d, –max-depth=NPrint total for directory only if it is N or fewer levels below the command line argument.
-h or –human-readableDisplays sizes in human-readable format (KB, MB, GB), making it easier to interpret the usage.
-S, –separate-dirsFor directories, don’t include size of subdirectories.
-s or –summarizeProvides a summary of the disk usage for the specified directory or file, without subdirectory details.
–timeShow the time of last modification of any file or directory.
–excludeExcludes specific directories or files from disk usage calculation based on patterns or names.

du Command Examples

Example 1. -h option in du command

If we want to print sizes in human readable format(K, M, G), use -h option

du -h /home/Mandeep/test 

Output:

44K    /home/mandeep/test/data
2.0M    /home/mandeep/test/system design
24K    /home/mandeep/test/table/sample_table/tree
28K    /home/mandeep/test/table/sample_table
32K    /home/mandeep/test/table
98M    /home/mandeep/test

44K    /home/mandeep/test/data
2.0M    /home/mandeep/test/system design
24K    /home/mandeep/test/table/sample_table/tree
28K    /home/mandeep/test/table/sample_table
32K    /home/mandeep/test/table
98M    /home/mandeep/test

Example 2. To display all files, including directories, with their sizes

Use -a option for printing all files including directories.

du -a -h /home/mandeep/test

Output: This is partial output of above command.

4.0K    /home/mandeep/test/blah1-new
4.0K    /home/mandeep/test/fbtest.py
8.0K    /home/mandeep/test/data/4.txt
4.0K    /home/mandeep/test/data/7.txt
4.0K    /home/mandeep/test/data/1.txt
4.0K    /home/mandeep/test/data/3.txt
4.0K    /home/mandeep/test/data/6.txt
4.0K    /home/mandeep/test/data/2.txt
4.0K    /home/mandeep/test/data/8.txt
8.0K    /home/mandeep/test/data/5.txt
44K    /home/mandeep/test/data
4.0K    /home/mandeep/test/notifier.py

Example 3. To calculate the total size of a directory and its subdirectories

Use -c option to print total size

du -c -h /home/mandeep/test

Output:

44K    /home/mandeep/test/data
2.0M    /home/mandeep/test/system design
24K    /home/mandeep/test/table/sample_table/tree
28K    /home/mandeep/test/table/sample_table
32K    /home/mandeep/test/table
98M    /home/mandeep/test
98M    total

Example 4. -d option in du command

To print sizes to particular level, use -d option with level no.

du -d 1 /home/mandeep/test

Output:

44    /home/mandeep/test/data
2012    /home/mandeep/test/system design
32    /home/mandeep/test/table
100104    /home/mandeep/test

Now try with level 2, you will get some extra directories

du -d 2 /home/mandeep/test

Output:

44    /home/mandeep/test/data
2012    /home/mandeep/test/system design
28    /home/mandeep/test/table/sample_table
32    /home/mandeep/test/table
100104    /home/mandeep/test

Example 4. To obtain the disk usage summary for a directory

Get summary of file system using -s option

du -s /home/mandeep/test

Output:

100104    /home/mandeep/test

Example 5. To view the timestamp of the last modification of files and directories

Get the timestamp of last modified using –time option

du --time -h /home/mandeep/test

Output:

44K    2018-01-14 22:22    /home/mandeep/test/data
2.0M    2017-12-24 23:06    /home/mandeep/test/system design
24K    2017-12-30 10:20    /home/mandeep/test/table/sample_table/tree
28K    2017-12-30 10:20    /home/mandeep/test/table/sample_table
32K    2017-12-30 10:20    /home/mandeep/test/table
98M    2018-02-02 17:32    /home/mandeep/test

Conclusion

here, we have discussed the du command in Linux which provides us essential insights into file and directory space usage, enabling users to effectively manage their storage. We also discussed the variety of options available. Overall, we can say that mastering du command and its options, a user can efficiently analyze disk usage, identify storage areas, and optimize their system’s storage utilization.


Next Article
Practice Tags :

Similar Reads