auf die Ausführung, wie die Existenz von hbase
Tabelle überprüfen Shell-Skript mit:einen Return-Code Get hbase Befehl in Shell-Skript
if [HBASE COMMAND]
echo "table exist"
else
echo "create new table"
auf die Ausführung, wie die Existenz von hbase
Tabelle überprüfen Shell-Skript mit:einen Return-Code Get hbase Befehl in Shell-Skript
if [HBASE COMMAND]
echo "table exist"
else
echo "create new table"
Exit-Status mit $?
geprüft werden kann, 2.5.2 Special Parameters von The Open Group Basisspezifikationen sehen Ausgabe 7:
printf "exists '%s'\n" mytable | hbase shell 2>&1 | grep -q "does exist" 2>/dev/null
if [ $? -eq 0 ] ; then
printf "table exists\n"
else
printf "create new table\n"
fi
Sie können direkt Verbindung-Liste der Befehle mit einer if
Anweisung ausführen; siehe The if Conditional Construct Abschnitt von Die Open Group Base Spezifikationen Ausgabe 7. Wenn der Exit-Status 0 (Erfolg) ist, werden die Befehle ausgeführt, die in dem Block then
enthalten sind.
einen Versuch, um das Geben die Existenz von mytable
zu überprüfen:
if printf "exists '%s'\n" mytable | hbase shell 2>&1 | grep -q "does exist" 2>/dev/null ; then
printf "table exists\n"
else
printf "create new table\n"
fi
grep -q
druckt nichts auf die Standardausgabe und den Exit-Status ist 0
(Erfolg), wenn die regex
matches (wenn die Zeichenfolge does exist
gefunden in der Ausgabe von hbase
Befehl generiert).
hbase shell -n
kann verwendet werden, um Befehle von einem Shell-Skript auszuführen.
Verwenden Sie den Befehl exists
, um das Vorhandensein einer Tabelle zu überprüfen.
diesen Fehler bei der Verwendung dieser existiert „Loaderror: Datei zu laden - -n Last bei org/jruby/RubyKernel.java: 1087“ –
oups, versuche das '-n' zu entfernen (die Antwort wurde aktualisiert). Ist es besser? –
Werfen Sie einen Blick auf http://www.shellcheck.net/ – andlrc