Expect - Fehler in While

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von shady, 28.10.2010.

  1. shady

    shady Grünschnabel

    Dabei seit:
    28.10.2010
    Beiträge:
    2
    Zustimmungen:
    0
    Hi,

    versuche mich gerade mit Expect und bin dabei, ein File zeilenweise auszulesen, wobei das erste Argument ein Host und das zweite ein Passwort ist, jeweils durch ein Leerzeichen getrennt.

    file.db (liegt im selben Verzeichnis (Home) wie das Script
    Code:
    Host1 PW
    Host2 PW
    Host3 PW
    Dazu habe ich folgenden Code, der meiner Meinung nach syntaktisch richtig sein müsste.
    Code:
    #!/usr/local/bin/expect --
    
    set f [open file.db r]
    puts $f
    
    while {[gets $f line] >= 0}
            {
                    scan "$line" "%s %s" host pw
                    puts "$host $pw"
            }
    close $f
    Das ganze bringt mir dann leider folgenden Fehler:
    Code:
    file4
    wrong # args: should be "while test command"
        while executing
    "while {[gets $f line] != -1}"
        (file "test2" line 6)
    Vom Syntax her müsste es doch passen, oder?
    Ich tippe mal auf einen Fehler beim Datei Öffnen. Hab die Rechte für file.db schon mal auf 777 geändert, aber da kommt das selbe raus.

    System:
    FreeBSD 7.3
    expect version 5.44.1.15
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. shady

    shady Grünschnabel

    Dabei seit:
    28.10.2010
    Beiträge:
    2
    Zustimmungen:
    0
    Ok, selbst gelöst

    Es muss heißen:
    Code:
    while {[gets $f line] >= 0} [B][COLOR="red"]{[/COLOR][/B]
                    scan "$line" "%s %s" host pw
                    puts "$host $pw"
    
    Die geschwungene Klammer auf darf nicht in der naechsten Zeile stehn ... :/
     
Thema:

Expect - Fehler in While

Die Seite wird geladen...

Expect - Fehler in While - Ähnliche Themen

  1. Shell if-Abfrage mit equal or greater wirft Fehlermeldung unary operator expected

    Shell if-Abfrage mit equal or greater wirft Fehlermeldung unary operator expected: Hallo zusammen, ich habe ein Problem mit einem selbstgebauten Script. Edit 10:26: Pardon, es handelt sich um ein HP-UX Release B.11.23 U...
  2. syntax error near unexpected token `&'

    syntax error near unexpected token `&': Hallo Ich habe ein Scrip angepasst bzw. erweiter und habe nun an einer Stelle ein Problem. Vor der erweiterung ist es einwandfrei...
  3. expect: mehrwörtige Variable {wort1 wort2 ...}

    expect: mehrwörtige Variable {wort1 wort2 ...}: Hi, wie kann man denn die geschweiften Klammern einer mehrwortigen Variable bei expect entfernen? Ein Beispiel wie folgt: #! /usr/bin/expect...
  4. expected unqualified-id

    expected unqualified-id: Servus Ich bin gerade am Programmieren üben. Es gibt da einen Fehler über den ich nicht schlau werde. köntet ihr euch das bitte mal...
  5. "expect can't be cross compiled" ..?!

    "expect can't be cross compiled" ..?!: hi, versuche gerade expect-5.43 zu kompilieren und erhalte dabei den fehler: checking if WNOHANG requires _POSIX_SOURCE... configure: error:...