Shell Variable über Dialogbox

Shell Variable über Dialogbox

In einem anderen Artikel hatte ich kurz geäußert, dass es möglich ist über eine Dialogbox Werte, die z.B. in Variablen gespeichert werden, weiterverarbeiten zu können. Ich habe eine Daueraufgabe zu erfüllen, die darin besteht, dass ich immer dann, wenn ich einen neuen Verlag bei meinen Tätigkeiten sehe, in eine Tabelle einer Datenbank einzufügen.

Diese Aufgabe könnte ich z.B. auf der Konsole via Login nach MySQL erledigen oder über PHPMyAdmin oder ich könnte mir aufwendig ein PHP-Script mit Formular und Datenbankanbindung erstellen. Ist mir zu aufwendig, zumal ich ja doch mehr die Konsole benutzen möchte.

Also bin ich im Internet auf die Suche gegangen, wie ich das, was mir vorschwebt, erledigen kann. Herausgekommen ist folgendes Script:

#!/bin/bash
#
# Dieses Script ist dafür gedacht, dass ein neuer Verlag mit seinem Namen und der Webseite in die Tabelle eingefügt wird.
#
# Daten für den Datenbankzugriff
#
user="xxx”
server="localhost”
pw="xxx”
db="jopii_hauptdb”
tabelle="media_verlag”
#
# Hier wird eine Dialogabfrage für die spezifischen Angaben gemacht.
#
verlagname=‵dialog –inputbox “Bitte den Verlagnamen eingeben:” 0 0 3>&1 1>&2 2>&3‵
url=‵dialog –inputbox “Bitte die Webseite eingeben:” 0 0 3>&1 1>&2 2>&3‵
ordner=‵dialog –inputbox “Bitte den Ordnernamen eingeben:” 0 0 3>&1 1>&2 2>&3‵
#
#dialog –clear
#clear
#
#*********************************************************
# Verbindung zur Datenbank aufnehmen und den gefüllten
# Insert-String in die Tabelle einfügen.
#*********************************************************
#
mysql -u $user -h $server –password="$pw” $db -e “insert into $tabelle (verlagname, url, ordner, erfasst) values (‘$verlagname’, ‘$url’, ‘$ordner’, now());”
#
echo “Der Verlag $verlagname wurde erfolgreich eingefügt.”

Über eine simple Dialogbox kann ich die drei erforderlichen Werte in die Tabelle einfügen.

Einfacher geht es kaum noch, denn ich möchte diese eher einfachen Dinge nicht zu aufwendig werden lassen. Später, wenn ich mit meinem Thema durch bin und in eine Art von Regelbetrieb gehe, werde ich mir was anderes überlegen. Derzeit bin ich aber in diesem kleinen Projekt in der Aufbauarbeit und möchte Daten unaufwendig sammeln. Mit diesem kleinen Script gelingt mir das wirklich sehr gut.

Wie die Eingabe dann funktioniert, ist in dem kleinen Videoclip zu sehen: