#!/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
