summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorErich Eckner <git@eckner.net>2021-10-29 10:29:49 +0200
committerErich Eckner <git@eckner.net>2021-10-29 10:29:49 +0200
commitee51f975dd751b7f2e2e1b2f3ea8abd0792978dc (patch)
treefee03bee737da5db470e63fbf893aa094a65bd31
parent444635d3fd50351d0449c8bfa731b6e1797ad1b7 (diff)
downloadcopyPhotos-ee51f975dd751b7f2e2e1b2f3ea8abd0792978dc.tar.xz
copyPhotos: Komplexität reduziert
-rwxr-xr-xcopyPhotos40
1 files changed, 16 insertions, 24 deletions
diff --git a/copyPhotos b/copyPhotos
index 61a596a..388ed2a 100755
--- a/copyPhotos
+++ b/copyPhotos
@@ -201,31 +201,23 @@ do
"")
break
;;
- "f:"*|"k:"*|"m:"*|"fk:"*|"kf:"*|"mk:"*|"km:"*|"mf:"*|"fm:"*|"kmf:"*|"kfm:"*|"mkf:"*|"fkm:"*|"mfk:"*|"fmk:"*)
+ *":"*)
+ printf '%s\n' "${s}" \
+ | grep -qi '^[kfm]\+:' \
+ || continue
re="${s#*:}"
- case "${s%%:*}" in
- 'f')
- wen='Friedrich'
- ;;
- 'k')
- wen='Kasimir'
- ;;
- 'm')
- wen='Miranda'
- ;;
- 'fk'|'kf')
- wen='Friedrich und Kasimir'
- ;;
- 'fm'|'mf')
- wen='Friedrich und Miranda'
- ;;
- 'km'|'mk')
- wen='Kasimir und Miranda'
- ;;
- 'fkm'|'fmk'|'kfm'|'mfk'|'kmf'|'mkf')
- wen='Friedrich, Kasimir und Miranda'
- ;;
- esac
+ wen=''
+ for wer in 'k:Kasimir' 'f:Friedrich' 'm:Miranda'; do
+ printf '%s\n' "${s%%:*}" \
+ | grep -qF "${wer%:*}" \
+ && wen="${wen}${wen:+, }${wer#*:}"
+ done
+ wen=$(
+ printf '%s\n' "${wen}" \
+ | sed '
+ s@, \(\S\+\)$@ und \1@
+ '
+ )
bild="$(
echo "${!daten[@]}" | \
tr ' ' '\n' | \