prog_name= $(basename $0)

Diskutiere prog_name= $(basename $0) im Shell-Skripte Forum im Bereich Programmieren unter Linux/Unix; hallo, ganz kurze frage. warum macht die obige Zeile eine Endlosschleife? Das soll in ein bash-script rein. ich denke , das kostet Euch nur eine...

  1. #1 flappinski, 18.03.2008
    flappinski

    flappinski Foren As

    Dabei seit:
    31.03.2006
    Beiträge:
    87
    Zustimmungen:
    0
    hallo, ganz kurze frage.
    warum macht die obige Zeile eine Endlosschleife? Das soll in ein bash-script rein.
    ich denke , das kostet Euch nur eine Sekunde....
    LG,
    Stephan
     
  2. #2 bytepool, 18.03.2008
    Zuletzt bearbeitet: 18.03.2008
    bytepool

    bytepool Code Monkey

    Dabei seit:
    12.07.2003
    Beiträge:
    791
    Zustimmungen:
    0
    Ort:
    /home/sweden/göteborg
    Hi,

    ich wuerde behaupten du hast da ein Leerzeichen zuviel ;)
    Code:
    prog_name=$(basename $0)
    
    Beim bash skripting muss man bekanntlich sehr mit Leerzeichen aufpassen, wo welche hinduerfen und wo nicht. In deinem Fall hat er wohl versucht die Ausgabe von $(basename $0) nochmal auszufuehren, so dass du dein eigenes Skript immer wieder aufgerufen hast.

    Edit:
    Ich wuerde wahrscheinlich auch noch Anfuehrungszeichen drum machen, nur um sicher zu gehen. Also
    Code:
    prog_name="$(basename $0)"
    
    mfg,
    bytepool
     
  3. #3 flappinski, 18.03.2008
    flappinski

    flappinski Foren As

    Dabei seit:
    31.03.2006
    Beiträge:
    87
    Zustimmungen:
    0
    ich wusste doch, dass ihr schnell seid.
    funktionert jetzt wunderbar, danke.
    böse,böse leerzeichen, und ich dachte ich hätte schon alle Möglichkeiten durchprobiert.....
     
Thema:

prog_name= $(basename $0)