The command displays the names of the 10 largest files in the current directory, including their sizes, by using a pipeline of Unix utilities (du
, sort
, and head
). The command includes file counting, numerical sorting, and reversing the order to show the largest files first.
du -a . | sort -n -r | head -n 10
#!/bin/bash
# Define a function to calculate disk usage
disk_usage() {
# Use du to calculate disk usage of the current directory
local disk_usage_output
disk_usage_output=$(du -a. | sort -n -r | head -n 10)
# Display the top 10 largest files in human-readable format
echo "$disk_usage_output"
}
# Call the function to display the disk usage
disk_usage
Command Overview
The given command is a pipeline of Unix utilities used to display the 10 largest files in the current directory.
du -a.
:
du
: Displays information about file system disk usage.-a
: Includes counting the size of all files and directories..
: The current directory is specified as the starting point.sort -n -r
:
sort
: Sorts the input lines.-n
: Sorts numerically.-r
: Sorts in reverse order.head -n 10
:
head
: Outputs the first few lines of a file.-n 10
: Specifies the number of lines to output, which is 10 in this case.Effect
This command displays the names of the 10 largest files in the current directory, including their sizes.