From 8f556086ff0d0c834b5f2fb11e75ab5aedef9b52 Mon Sep 17 00:00:00 2001 From: Erich Eckner Date: Sun, 13 Oct 2019 20:35:32 +0200 Subject: neue-Kategorie: mehrere Einträge auf ein Mal einfügbar MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- neue-Kategorie | 28 +++++++++++++++++----------- 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/neue-Kategorie b/neue-Kategorie index 8de4e1b..3b8433c 100755 --- a/neue-Kategorie +++ b/neue-Kategorie @@ -1,7 +1,7 @@ #!/bin/bash -if [ $# -ne 2 ]; then - >&2 echo "$0"' $Kategorie $Eintrag' +if [ $# -lt 2 ]; then + >&2 echo "$0"' $Kategorie $Eintrag1 $Eintrag2 ...' exit 1 fi @@ -10,21 +10,27 @@ Kategorien['Kopf']='Koepfe' Kategorien['Gewindetyp']='Gewindetypen' Kategorien['Material']='Materialien' -if [ -z "${Kategorien["$1"]}" ]; then - >&2 printf 'unbekannte Kategorie %s, ich kenne:\n' "${1}" +Kategorie="$1" +shift + +if [ -z "${Kategorien["${Kategorie}"]}" ]; then + >&2 printf 'unbekannte Kategorie %s, ich kenne:\n' "${Kategorie}" >&2 printf '%s\n' "${!Kategorien[@]}" exit 2 fi { - printf 'INSERT IGNORE INTO `%s`' "${Kategorien["$1"]}" + printf 'INSERT IGNORE INTO `%s`' "${Kategorien["${Kategorie}"]}" printf ' (`name`)' - printf ' VALUES (' - printf 'FROM_BASE64("' - printf '%s' "$2" \ - | base64 -w0 - printf '")' - printf ');\n' + printf ' VALUES' + for Eintrag in "$@"; do + printf ',(FROM_BASE64("' + printf '%s' "${Eintrag}" \ + | base64 -w0 + printf '"))' + done \ + | sed 's@^,@ @' + printf ';\n' } \ | mysql \ && echo 'ok' -- cgit v1.2.3-70-g09d2