2>ERROR
Sendet die stderr
Ausgabe an eine Datei mit dem Namen ERROR
und nicht an eine Variable. Versuchen Sie stattdessen Folgendes:
ERROR=$(sudo -u postgres psql -c "CREATE DATABASE $1 WITH OWNER $2;" 2>&1 1>/dev/null)
Ich verwende psql
(PostgreSQL) -Befehl in einem Bash-Skript:
function create_database () { sudo -u postgres psql -c "CREATE DATABASE $1 WITH OWNER $2;" 2>ERROR if [[ $? -ne 0]; then echo "error -> $ERROR" return 1 else: .... return 0 }
Ich versuche das zu fangen error
und an eine Variable zu übergeben, aber die Variable ist leer.
2>ERROR
Sendet die stderr
Ausgabe an eine Datei mit dem Namen ERROR
und nicht an eine Variable. Versuchen Sie stattdessen Folgendes:
ERROR=$(sudo -u postgres psql -c "CREATE DATABASE $1 WITH OWNER $2;" 2>&1 1>/dev/null)