
Am 17.07.2011 21:33, schrieb David Haller:
Hallo,
Am Sun, 17 Jul 2011, Martin Deppe schrieb:
[..]
# Testausgaben für die einzelnen Teile diff -q $CFGDIR/$CFGNAM $SRCDIR/$ALLNAM >/dev/null echo "$ALLNAM: $?" diff -q $CFGDIR/$CFGNAM $SRCDIR/$BASNAM >/dev/null echo "$BASNAM: $?"
Hier bekommst du 0/1 je nach Differenz, richtig? Und du bekommst keine Ausgabe.
[ `diff -q $CFGDIR/$CFGNAM $SRCDIR/$BASNAM >/dev/null || diff -q $CFGDIR/$CFGNAM $SRCDIR/$ALLNAM >/dev/null` ] echo "[ $? ]"
Hier bekommst du immer 1. Warum? Darum:
test `true`; echo $? test `false`; echo $? test ""; echo $?
Du testest den leeren String. Und der ist eben "falsch".
==== help test ==== -n STRING STRING True if string is not empty. ====
Das 'if test' ist bei sowas schlicht flasch. Korrekt ist:
if ! diff -q .. >/dev/null && ! diff -q .. >/dev/null; then echo "$CFGDIR/$CFGNAM: unknwon version - someone changed the file" [..]
Aber bei sowas ist 'cmp -s' sowieso einfacher.
if ! cmp -s $CFGDIR/$CFGNAM $SRCDIR/$ALLNAM && \ ! cmp -s $CFGDIR/$CFGNAM $SRCDIR/$BASNAM; then
HTH, -dnh
Hi David, super, danke Dir! Beste Grüße Martin -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org