testsAndMisc/linux_configuration/scripts/single_use/misc/testsAndMisc-bash/compress_images.sh

30 lines
887 B
Bash
Raw Normal View History

#!/bin/bash
# Directory containing the images
directory="./images"
# Compression level (default to 0 if not provided)
compression_level=${1:-0}
# Create output directory, overwrite if it already exists
output_directory="${directory}/webp"
rm -rf "$output_directory"
mkdir -p "$output_directory"
# Iterate through each file in the directory
for file in "$directory"/*.{jpg,jpeg,png,bmp,tiff}; do
2026-02-20 01:17:53 +01:00
# Skip if no matching files are found
[ -e "$file" ] || continue
2026-02-20 01:17:53 +01:00
# Extract the filename without extension
filename=$(basename "$file")
filename_no_ext="${filename%.*}"
2026-02-20 01:17:53 +01:00
# Convert the file to WebP with specified compression level
cwebp -q "$compression_level" "$file" -o "$output_directory/${filename_no_ext}.webp"
2026-02-20 01:17:53 +01:00
echo "Converted: $file -> $output_directory/${filename_no_ext}.webp"
done
echo "All images have been converted to WebP with compression level $compression_level."