I teorien kommer jeg til at spare tid på det når jeg skal sende billeder videre ... men i praksis så tror jeg mit arbejde med at få det lavet gør, at der går et par år før der er en reel tidsgevinst
![Blink ;)](./images/smilies/ubuntu/icon_wink.png)
Jeg har ihvertfald lært noget om bash ...
Kode: Vælg alt
#!/bin/bash
#~ png to jpg converter (imagemagick) made by Thomas Jensen
#~
#~ Usage: conv_png_jpg.sh -n <zip-filename> -p <pixelsize>
#~
#~ Set pixelsize to 0 for original size
#~
function convert_pictures() {
start=$(date +%s)
n=0
for file in *.png; do
filename=${file%.*}
if [[ $fullsize == 1 ]]; then
pixel="full"
convert "${filename}.png" -quality 90 "${filename}_${pixel}.jpg" &>/dev/null
else
convert "${filename}.png" -resize ${pixel}x${pixel} -quality 90 "${filename}_${pixel}.jpg" &>/dev/null
fi
((n++))
done
end=$(date +%s)
runtime=$((end-start))
printf "\n$n filer konverteret på $runtime sekunder\n\n"
zip -q ${zipfilename}_$(date +%Y%m%d)_${pixel}.zip *.jpg
ls *.jpg
rm *.jpg
printf "\nZipped to: $(ls *.zip)\n\n"
}
function error_message(){
printf "\nInvalid option(s). Command should be:\n"
printf "\n\tconv_png_jpg.sh -n <zip-filename> -p <pixelsize> \n\n"
printf "\tSet pixelsize to 0 for original size \n\n"
}
if [ -z "$1" ]; then
fullsize=1
zipfilename=Pictures
convert_pictures #calling function
exit 0
elif [ "$1" != "-n" ] ; then
error_message
exit 1
else # Flags section
while getopts "n:p:" opt; do
case $opt in
n)
zipfilename=$OPTARG
;;
p)
if [[ $OPTARG == 0 ]]; then
fullsize=1
else
pixel=$OPTARG
fi
convert_pictures #calling function
exit 0
;;
\?)
error_message
exit 1
;;
esac
done
fi
convert_pictures
exit 0