mirror of
https://github.com/flynx/ImageGrid.git
synced 2025-10-28 09:50:09 +00:00
93 lines
1.5 KiB
Bash
Executable File
93 lines
1.5 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# config...
|
|
MNT_PATH=/run/media/f_lynx/
|
|
ARCHIVE_PATTERN=*-P-*
|
|
EXT=psd
|
|
# this is here to avoid using windows find in some contexts...
|
|
FIND=/bin/find
|
|
|
|
printhelp () {
|
|
echo "Find source images"
|
|
echo "format:"
|
|
echo " $1 [ARGS] JPGS"
|
|
echo
|
|
echo "supported commands:"
|
|
echo " -h|--help - print this message."
|
|
echo " -e|--ext EXT - target extension (Default: $EXT)."
|
|
}
|
|
|
|
if [[ $1 == "" ]] ; then
|
|
echo Error: need a list of files to process...
|
|
exit 1
|
|
fi
|
|
|
|
# handle args...
|
|
while true; do
|
|
if [ -z $1 ]; then
|
|
break
|
|
fi
|
|
case $1 in
|
|
|
|
-h|--help)
|
|
printhelp
|
|
exit
|
|
;;
|
|
|
|
-e|--ext)
|
|
shift
|
|
EXT=$1
|
|
shift
|
|
;;
|
|
|
|
*)
|
|
break
|
|
;;
|
|
esac
|
|
done
|
|
|
|
# build pattern...
|
|
# clear the duplicate suffix...
|
|
PATTERN="${1//n/n?}"
|
|
PATTERN="${PATTERN/.jpg/}"
|
|
shift
|
|
while [[ "$1" != "" ]] ; do
|
|
# clear the duplicate suffix...
|
|
P="${1//n/n?}"
|
|
P="${1/-[0-9]/}"
|
|
P="${P/.jpg/}"
|
|
# grow the pattern...
|
|
PATTERN="$PATTERN\|$P"
|
|
shift
|
|
done
|
|
PATTERN=".*/\($PATTERN\)\.$EXT"
|
|
|
|
#echo $PATTERN 1>&2
|
|
#echo $PATTERN > .pattern
|
|
|
|
# do the actual find...
|
|
cd "$MNT_PATH"
|
|
|
|
for a in $ARCHIVE_PATTERN ; do
|
|
cd "$a"
|
|
if [[ $? != 0 ]] ; then
|
|
# can't cd -- unmounted dir...
|
|
echo Skipping unmounted: $a... 1>&2
|
|
continue
|
|
fi
|
|
echo Searching: $a... 1>&2
|
|
# find the files...
|
|
$FIND . \
|
|
-iregex "$PATTERN" \
|
|
-exec realpath \{\} \; \
|
|
| tee /dev/stderr
|
|
|
|
##for i in `$FIND . -iregex "$PATTERN"` ; do
|
|
## echo Found: `basename "$i"` 1>&2
|
|
## echo `cygpath -aw "$i"`
|
|
##done
|
|
cd ..
|
|
done
|
|
|
|
# vim:set sw=4 ts=4 :
|