bash postgre

jeudi 6 août 2015

Hi,

ich habe das Problem, dass psql mir innerhalb einer While Schleife beim zweiten Aufruf ein falsches Ergebniss liefert

Script Ausschnitt
Code:

while read SS; do
  if [ -n "$SS" ];
    then
   
  if [ -d "$SS" ];
    then
      SERVER=$SS
      cd $SERVER/credstore_export 
        for SLOT in $(ls); do
          if [ -e $SLOT/DS/ds_credentials ];
            then
              cat $SLOT/DS/ds_credentials | sed 's/;/ /g' | sed 's/:/\\:/g' > /tmp/DS.tmp
              while read DSNAME JDBCPFAD TOOLUSER PASSWORD; do
                CRYPTPASS=$(func_ENCRYPT $PASSWORD)
                ZAEHLER=$(psql -h $DBHOST -p $DBPORT -d $DBDB --user $DBUSER -t -c "select count(1) from credstore.credentials where type = 'datasource' and hostname = '$SERVER:$SLOT' and ressourcename = '$DSNAME' and tooluser = '$TOOLUSER';" | awk '{print $1}')
                  if [ $ZAEHLER -gt 0 ]; then
                    psql -h $DBHOST -p $DBPORT -d $DBDB --user $DBUSER -c "update credstore.credentials set tooluser = '$TOOLUSER', password = '$CRYPTPASS', path = '$JDBCPFAD' where (type = 'datasource' and hostname ='$SERVER:$SLOT' and ressourcename = '$DSNAME') or (path != '$JDBCPFAD' or tooluser != '$TOOLUSER');"
                  else
                    psql -h $DBHOST -p $DBPORT -d $DBDB --user $DBUSER -c "insert into credstore.credentials (type, ressourcename, path, tooluser, password, bemerkung, hostname) select 'datasource','$DSNAME','$JDBCPFAD','$TOOLUSER','$CRYPTPASS','Jboss4.x Datasource','$SERVER:$SLOT';"
                  fi
              done < /tmp/DS.tmp
          fi
exit

Hier liefert die Variable ZAEHLER beim ersten ausfuehren korrekterweise eine "1", beim zweiten Durchlauf eine "0". Wenn ich jedoch das bei "bash -x" expandierte Statement Qutebereinigt nativ ausfuehre, bekomme ich eine "1" zurueck.

Hat jemand eine Idee was in dieser Schleife dafuer sorgt, dass psql/bash mir den falschen Wert liefert?

Debug Ausgabe bash -x
Code:

+ read DSNAME JDBCPFAD TOOLUSER PASSWORD
++ func_ENCRYPT Kooth2me
++ PASSPHRASE=Kooth2me
++ echo Kooth2me
++ gpg --encrypt --recipient skelemen
++ openssl enc -base64
+ CRYPTPASS='hQIMA5LqCoJuU54ZARAAhGvBgydh36JzpoiIUOT1pA+N+RNjGw9G+rxSJSaPjlk2
I+CGy3PRc9i4V1+b6pG2vbaE/2rcPtdNg6zid1/mVh7/2qcHRKU2WYK9bBDF5fSC
Dfic56a48JzSxR6oEopf3T4rvQj5MU4Q5NPwHT1O/H7j292ozi82d10ySz4akVXA
G1JxUd9yHNTi/2u2sc3+0cP8o4uck0SzOmACMVf3tqDYqCouWBj0bDfqY8AT8plm
UnOZUbgFXIbhyrkvkuiFLIj4KmqcMpPhM8MVtLN34RXUKFklENstfEbA1GWv0Sxa
KxmTnf0hOYyFeX+O9EFF5frJ8ClUkLozJnRiSz4bGlXfQ+VBK+7Kh4JmE7t8DzTH
IcohJ/MXQOC/PX+pFWb412iYc8KnpwAjH99yPRXATXOlBYxlNIjUfWQmNkb/CFLA
1I3QNtiIyugcfTKd4pDHzJKSqQ22+n6IrF83xRe/LzUFk/EUfGVcqLB3QuUZzsxW
O+JoU2MBdbzf/YyEGrpEdYnGUX9Fx1teytniW4z9JB93AFTDHItjQNZr0ZqGwnkE
l3rVdxx8+cs9cXOhT09RTovgUXNwV9ktrIWGJXxbZSc6sPB8ped+NBI2Gn8bakRB
gkRfwVZdd9cbP5P4FE3amqhJDGFchGDOgE3308pyzN7BkHethDq411rqxRb9XMPS
RAHWAEd0LMYaH4XnsnB3bsqpLR2z9HuR1w0xC+b4qtHdJXvUkUqYxEZwOts1N0xg
L8cvqXOrSaqcCroKLrZ6/NXAwXR7'
++ awk '{print $1}'
++ psql -h localhost -p 5432 -d projects --user druuhl -t -c 'select count(1) from credstore.credentials where type = '\''datasource'\'' and hostname = '\''swisbossctest01.schlund.de:slot1'\'' and ressourcename = '\''jdbc/termination/SchlupaDS'\'' and tooluser = '\''ue_jboss_t02'\'';'

------------korrekte Ausgabe

+ ZAEHLER=1
+ '[' 1 -gt 0 ']'
+ psql -h localhost -p 5432 -d projects --user druuhl -c 'update credstore.credentials set tooluser = '\''ue_jboss_t02'\'', password = '\''hQIMA5LqCoJuU54ZARAAhGvBgydh36JzpoiIUOT1pA+N+RNjGw9G+rxSJSaPjlk2
I+CGy3PRc9i4V1+b6pG2vbaE/2rcPtdNg6zid1/mVh7/2qcHRKU2WYK9bBDF5fSC
Dfic56a48JzSxR6oEopf3T4rvQj5MU4Q5NPwHT1O/H7j292ozi82d10ySz4akVXA
G1JxUd9yHNTi/2u2sc3+0cP8o4uck0SzOmACMVf3tqDYqCouWBj0bDfqY8AT8plm
UnOZUbgFXIbhyrkvkuiFLIj4KmqcMpPhM8MVtLN34RXUKFklENstfEbA1GWv0Sxa
KxmTnf0hOYyFeX+O9EFF5frJ8ClUkLozJnRiSz4bGlXfQ+VBK+7Kh4JmE7t8DzTH
IcohJ/MXQOC/PX+pFWb412iYc8KnpwAjH99yPRXATXOlBYxlNIjUfWQmNkb/CFLA
1I3QNtiIyugcfTKd4pDHzJKSqQ22+n6IrF83xRe/LzUFk/EUfGVcqLB3QuUZzsxW
O+JoU2MBdbzf/YyEGrpEdYnGUX9Fx1teytniW4z9JB93AFTDHItjQNZr0ZqGwnkE
l3rVdxx8+cs9cXOhT09RTovgUXNwV9ktrIWGJXxbZSc6sPB8ped+NBI2Gn8bakRB
gkRfwVZdd9cbP5P4FE3amqhJDGFchGDOgE3308pyzN7BkHethDq411rqxRb9XMPS
RAHWAEd0LMYaH4XnsnB3bsqpLR2z9HuR1w0xC+b4qtHdJXvUkUqYxEZwOts1N0xg
L8cvqXOrSaqcCroKLrZ6/NXAwXR7'\'', path = '\''jdbc:sybase:Tds:dbschlupa02-dev.schlund.de:1991/MIGRAENE'\'' where (type = '\''datasource'\'' and hostname ='\''swisbossctest01.schlund.de:slot1'\'' and ressourcename = '\''jdbc/termination/SchlupaDS'\'') or (path != '\''jdbc:sybase:Tds:dbschlupa02-dev.schlund.de:1991/MIGRAENE'\'' or tooluser != '\''ue_jboss_t02'\'');'
UPDATE 26
+ read DSNAME JDBCPFAD TOOLUSER PASSWORD
++ func_ENCRYPT ODU0ZGNk
++ PASSPHRASE=ODU0ZGNk
++ echo ODU0ZGNk
++ gpg --encrypt --recipient skelemen
++ openssl enc -base64
+ CRYPTPASS='hQIMA5LqCoJuU54ZARAAjTAGxnzT3uOyvWjkeTqE7v0IkY6uOJF9h7xQKP9NWAy0
wyPBZz6pDDLaTokO99LKjcJ8azobB+YAO/1xCaKzr6+xW0ShwZisA8KmdiSfoweM
m/XGq6mOYGHEJ8uIKCQWIe224YB33xn1PALgBpwxt938/VtXJHmC+Xh1unl6+mfM
WCkTehGaGTYwtJ+jvhrMg4fqr8X2uyWfxKFWmQou3t7pCR2n/1csysqKEpFsZY70
GZvColigerLqD2fhEfbJAHt1a5c1U8BKaEmLavq2fHn96MphjAErMZrXf9jI3mif
rGoeqS+dOReDYbXcpq8N1lvASMYihCXVVamEfnMNNE+UXPQqy396RpfCDPUaMEWw
mOWjR/3mF21Tn0QexAZYTgoI4cd90nQch5F9QDcveLyzUOlh5qJrknlM4uwjH/Ac
8FNCrQWU75eLGQfedC6ja6ix9leR4yPy9FtMaCoxhU1lvKMGbaYu/fV4xUYzLPz9
55gX4/zVcJEJpzLl7wmJsvKX0xGgdoe3PQGSQUYOHLNVJ3iBwFv4KTenLilTQwZn
9BDy0pbH1AWclxmOjPSks4fy6AsFXZ/nZtGJlQSxX+hBILsDhREKLvHCDHtnn4Fc
2Jtl6tkexTS1Y0a//hprWFF0bWb5j+550nsnOv4XZ38C7j8WJ576l297t2IFsdzS
RAEper3paBDHKK3EV7fMamHO+ZbBIrIIztwYS0YqMde4bNI1eR+TZhGldcwQbeyX
T1YR+WxddzqtHCaAjOz3j5xv8Uuw'
++ psql -h localhost -p 5432 -d projects --user druuhl -t -c 'select count(1) from credstore.credentials where type = '\''datasource'\'' and hostname = '\''swisbossctest01.schlund.de:slot1'\'' and ressourcename = '\''jdbc/cancellation/SchlupaSPAMSPDS'\'' and tooluser = '\''ue_jboss_xpl_c01'\'';'
++ awk '{print $1}'
#
--------------------Falsche Ausgabe

+ ZAEHLER=0
+ '[' 0 -gt 0 ']'

Gruss Stefan


0 commentaires:

Enregistrer un commentaire

 

Lorem

Ipsum

Dolor