fix variable

This commit is contained in:
VirtuBox 2018-08-09 21:45:12 +02:00
parent 77fa1e8aec
commit 0ce712acb1

View File

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
CSI="\\033[" CSI='\033['
CEND="${CSI}0m" CEND="${CSI}0m"
CGREEN="${CSI}1;32m" CGREEN="${CSI}1;32m"
@ -12,71 +12,68 @@ echo "Welcome to optimize.sh image optimization script."
echo "" echo ""
echo "" echo ""
echo "Do you want to optimize all jpg images in "$1" ? (y/n)" echo "Do you want to optimize all jpg images in $1 ? (y/n)"
while [[ $jpg != "y" && $jpg != "n" ]]; do while [[ $jpg != "y" && $jpg != "n" ]]; do
read -p "Select an option [y/n]: " jpg read -p "Select an option [y/n]: " jpg
done done
echo "" echo ""
echo "Do you want to optimize all png images in "$1" (it may take a while) ? (y/n)" echo "Do you want to optimize all png images in $1 (it may take a while) ? (y/n)"
while [[ $png != "y" && $png != "n" ]]; do while [[ $png != "y" && $png != "n" ]]; do
read -p "Select an option [y/n]: " png read -p "Select an option [y/n]: " png
done done
echo "" echo ""
echo "Do you want to convert all jpg & png images to WebP in "$1" ? (y/n)" echo "Do you want to convert all jpg & png images to WebP in $1 ? (y/n)"
while [[ $webp != "y" && $webp != "n" ]]; do while [[ $webp != "y" && $webp != "n" ]]; do
read -p "Select an option [y/n]: " webp read -p "Select an option [y/n]: " webp
done done
# optimize jpg # optimize jpg
jpg_optimize() { jpg_optimize() {
find "$1" -type f \( -iname "*.jpg" -o -iname "*.jpeg" \) -print0 | xargs -0 jpegoptim --preserve --quiet --strip-all -m82 find "$1" -type f \( -iname "*.jpg" -o -iname "*.jpeg" \) -print0 | xargs -0 jpegoptim --preserve --quiet --strip-all -m82
echo -ne " jpg optimization [${CGREEN}OK${CEND}]\\r" echo -ne " jpg optimization [${CGREEN}OK${CEND}]\\r"
echo -ne "\\n" echo -ne '\n'
} }
# optimize png # optimize png
png_optimize() { png_optimize() {
find "$1" -type f -iname '*.png' -print0 | xargs -0 optipng -o7 -strip all -quiet find "$1" -type f -iname '*.png' -print0 | xargs -0 optipng -o7 -strip all -quiet
echo -ne " png optimization [${CGREEN}OK${CEND}]\\r" echo -ne " png optimization [${CGREEN}OK${CEND}]\\r"
echo -ne "\\n" echo -ne '\n'
} }
# convert png to webp # convert png to webp
webp_convert_images() { webp_convert_images() {
find "$1" -type f -iname "*.png" -print0 | xargs -0 -I {} \ find "$1" -type f -iname "*.png" -print0 | xargs -0 -I {} \
bash -c 'webp_version="$0".webp bash -c 'webp_version="$0".webp
if [ ! -f "$webp_version" ]; then if [ ! -f "$webp_version" ]; then
{ cwebp -quiet -z 9 -mt {} -o {}.webp; } { cwebp -quiet -z 9 -mt {} -o {}.webp; }
fi' fi'
echo -ne " png to webp conversion [${CGREEN}OK${CEND}]\\r" echo -ne " png to webp conversion [${CGREEN}OK${CEND}]\\r"
echo -ne "\\n" echo -ne '\n'
# convert jpg to webp # convert jpg to webp
find "$1" -type f \( -iname "*.jpg" -o -iname "*.jpeg" \) -print0 | xargs -0 -I {} \ find "$1" -type f \( -iname "*.jpg" -o -iname "*.jpeg" \) -print0 | xargs -0 -I {} \
bash -c 'webp_version="$0".webp bash -c 'webp_version="$0".webp
if [ ! -f "$webp_version" ]; then if [ ! -f "$webp_version" ]; then
{ cwebp -quiet -q 82 -mt {} -o {}.webp; } { cwebp -quiet -q 82 -mt {} -o {}.webp; }
fi' fi'
echo -ne " jpg to webp conversion [${CGREEN}OK${CEND}]\\r" echo -ne " jpg to webp conversion [${CGREEN}OK${CEND}]\\r"
echo -ne "\\n" echo -ne '\n'
} }
if [ "$jpg" = "y" ] if [ "$jpg" = "y" ]; then
then
jpg_optimize "$@" jpg_optimize "$@"
fi fi
if [ "$png" = "y" ] if [ "$png" = "y" ]; then
then
png_optimize "$@" png_optimize "$@"
fi fi
if [ "$webp" = "y" ] if [ "$webp" = "y" ]; then
then
webp_convert_images "$@" webp_convert_images "$@"
fi fi
# We're done ! # We're done !
echo "" echo ""
echo -e " ${CGREEN}Image optimization performed successfully !${CEND}" echo -e " ${CGREEN}Image optimization performed successfully !${CEND}"
echo "" echo ""