40 lines
956 B
Bash
Executable File
40 lines
956 B
Bash
Executable File
#!/usr/bin/bash
|
|
# Purpose: batch image resizer
|
|
# Source: https://guides.wp-bullet.com
|
|
# Author: Mike
|
|
|
|
# absolute path to image folder
|
|
|
|
declare -A dimensions
|
|
dimensions["2400"]="1600"
|
|
dimensions["1500"]="1000"
|
|
dimensions["150"]="150"
|
|
dimensions["100"]="100"
|
|
folders="../bilder"
|
|
|
|
for WIDTH in "${!dimensions[@]}"; do
|
|
|
|
# max height
|
|
HEIGHT=${dimensions[$WIDTH]}
|
|
|
|
for FOLDER in $folders; do
|
|
cd $FOLDER
|
|
mkdir "${WIDTH}px"
|
|
|
|
for file in $FOLDER/*.jpg; do
|
|
#echo $file;
|
|
filename=$(basename $file)
|
|
targetname="${WIDTH}px/${filename}"
|
|
|
|
echo "erstelle $webpName"
|
|
convert $file -quality 90 -resize "${WIDTH}x${HEIGHT}" "$targetname";
|
|
|
|
webpName="${WIDTH}px/${filename}.webp"
|
|
echo "erstelle $webpName"
|
|
convert $targetname -quality 50 -define webp "$webpName"
|
|
done
|
|
|
|
done
|
|
|
|
done
|