Hi Lentes,! On Do, 03 Sep 2009, Lentes, Bernd wrote:
... ========================= uptodate() { if test -f "/lib/modules/`uname -r`/misc/vmnet.o"; then echo "ok" else echo "not ok" fi }
start() { if test "`uptodate`" = "not ok"; then if /usr/bin/vmware-config.pl -d; then echo "vmware_modules: Compiled" else echo "vmware_modules: Compilation Failed" fi else echo "vmware_modules: Uptodate" fi } ===========================
...
=========================== # See how we were called. case "$1" in start) start RETVAL=$? # if test "$RETVAL" -eq 0; then # touch /var/lock/subsys/vmware-kernel-modules # fi ;; ============================ ...
Wenn ich das Skript per "/etc/init.d/vmware_modules start" aufrufe, sehe ich auf der Kommandozeile folgendes: pc53082:~/skripte # /etc/init.d/vmware_modules start vmware_modules: Uptodate
Es wird nur das echo aus der Funktion "start" auf der Kommandozeile ausgegeben, nicht das echo aus der Funktion "uptodate".
Richtig, das echo aus der funktion wird als Rückgabewert in der If-Bedingung geprüft.
Aber in dem gestrigen Posting wurde die Funktion auch per `` aufgerufen, und das echo in der Funktion wurde in der Kommandozeile angezeigt. Oder lag das da dran, daß die Funktion zusätzlich noch per echo aufgerufen wurde ?
Ja. Mit freundlichen Grüßen Christian -- Biting someone with your natural teeth is "simple assault," while biting someone with your false teeth is "aggravated assault." [real standing law in Louisana, United States of America] -- 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