mirror of
https://github.com/acedanger/shell.git
synced 2025-12-05 22:50:18 -08:00
29 lines
790 B
Bash
Executable File
29 lines
790 B
Bash
Executable File
#!/bin/bash
|
|
|
|
# Check if a directory is provided as an argument
|
|
if [ -z "$1" ]; then
|
|
echo "Usage: $0 <directory>"
|
|
exit 1
|
|
fi
|
|
|
|
# Calculate the disk usage of the directory and its children
|
|
echo "Disk usage for directory: $1"
|
|
echo "--------------------------"
|
|
du -sh "$1"
|
|
|
|
echo
|
|
echo "Usage for each subdirectory"
|
|
echo "--------------------------"
|
|
|
|
# Iterate over each subdirectory
|
|
for dir in "$1"/*; do
|
|
if [ -d "$dir" ]; then
|
|
# Get the disk usage of the subdirectory
|
|
space_used=$(du -sh "$dir" | cut -f1)
|
|
# Count the number of files in the subdirectory
|
|
file_count=$(find "$dir" -type f | wc -l)
|
|
# Output the subdirectory name, space used, and file count in tabular format
|
|
printf "%-30s %-10s %10s files\n" "$(basename "$dir")" "$space_used" "$file_count"
|
|
fi
|
|
done
|