--- /dev/null
+#!/bin/bash
+# Desc: Collects .jpg/jpeg files from a Calibre .htmlz file into .cbz files
+# Version: 0.0.1
+
+for fin in ./*.htmlz; do
+ (
+ dout="${fin%.*}";
+ unzip "$fin" -x / -d "$dout";
+ pushd "$dout";
+ mapfile -t images < <(cat index.html | grep -E "(.jpg|.jpeg)" | sed -E -e 's#.+(images/[0-9]+.(jpeg|jpg)).+#\1#');
+ dout="./output";
+ if [[ -d "$dout" ]]; then
+ rm -r "$dout";
+ fi;
+ mkdir "$dout";
+ n=1;
+ for path in "${images[@]}"; do
+ fnew="${dout}/$(printf "%06d" "$n").jpg";
+ cp "$path" "$fnew";
+ ((n++));
+ done;
+ if [[ -f cover.jpg ]]; then
+ cp -n cover.jpg ./output/000000.jpg;
+ fi;
+ faout="output.cbz";
+ if [[ -f "$faout" ]]; then
+ rm "$fout";
+ fi;
+ zip -r output.cbz output;
+ ) &
+done;
+wait && echo "STATUS:Finished." 1>&2;