feat: progress bar
This commit is contained in:
parent
aa3c0a5191
commit
1978f835b4
30
compress
30
compress
@ -9,6 +9,23 @@ function wait_queue() {
|
|||||||
done
|
done
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function compress() {(
|
||||||
|
local nb total dir newdir file
|
||||||
|
cd "$DIR"
|
||||||
|
|
||||||
|
dir="$PWD"
|
||||||
|
total="$(printf '%s\n' * | wc -l)"
|
||||||
|
newdir="${PWD%/*}/$(basename "$dir")_1080p"
|
||||||
|
mkdir -p "$newdir"
|
||||||
|
for file in *; do
|
||||||
|
identify "$file" 2> /dev/null >&2 \
|
||||||
|
&& convert -resize x1080 "$file" "$newdir/$file" &
|
||||||
|
wait_queue
|
||||||
|
nb="$(printf '%s\n' "$newdir"/* | wc -l)"
|
||||||
|
echo "$((nb * 100 / total))"
|
||||||
|
done
|
||||||
|
)}
|
||||||
|
|
||||||
if [ -z "$1" ]; then
|
if [ -z "$1" ]; then
|
||||||
set "$(zenity --file-selection --multiple --directory --separator='
|
set "$(zenity --file-selection --multiple --directory --separator='
|
||||||
')" > /dev/null
|
')" > /dev/null
|
||||||
@ -19,16 +36,5 @@ if [ -z "$1" ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
for DIR in "$@"; do
|
for DIR in "$@"; do
|
||||||
cd "$DIR"
|
compress | zenity --progress --title="$DIR"
|
||||||
DIR="$PWD"
|
|
||||||
NEWDIR="${PWD%/*}/$(basename "$DIR")_1080p"
|
|
||||||
mkdir -p "$NEWDIR"
|
|
||||||
for FILE in *; do
|
|
||||||
wait_queue
|
|
||||||
identify "$FILE" 2> /dev/null >&2 \
|
|
||||||
&& convert -resize x1080 "$FILE" "$NEWDIR/$FILE" &
|
|
||||||
done
|
|
||||||
done
|
done
|
||||||
|
|
||||||
wait_queue
|
|
||||||
zenity --info --text="Done"
|
|
||||||
|
Loading…
Reference in New Issue
Block a user