rsh mit awk Syntax problem

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von Tittipoco, 26.09.2006.

  1. #1 Tittipoco, 26.09.2006
    Tittipoco

    Tittipoco Jungspund

    Dabei seit:
    25.09.2006
    Beiträge:
    21
    Zustimmungen:
    0
    halli hallo,

    ich habe ein Syntax problem bei folgendem Aufruf:
    rsh $SERVER -n "cat $LOGGESTERN ö grep PrintFile ö grep $SUCH ö awk -v CLIENT=$SERVER 'äprint SERVER,$1 ";" $6ü'" >> "$AUSGABE"

    Das Problem liegt bei dem ";" Das kann aus Gründen des rsh- Aufrufes nicht korrekt übersetzt werden. wie genau kann ich das syntaktisch richtig eingeben ?

    hoffe ihr könnt mir helfen !
     
  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. #2 Wolfgang, 26.09.2006
    Wolfgang

    Wolfgang Foren Gott

    Dabei seit:
    24.04.2005
    Beiträge:
    3.978
    Zustimmungen:
    0
    Ort:
    Erfurt
    Hallo

    Versuch es mal mit "\073" statt dem Semikola.

    Gruß Wolfgang
    PS Sind die ö Tippfehler?
     
  4. #3 Tittipoco, 26.09.2006
    Zuletzt bearbeitet: 26.09.2006
    Tittipoco

    Tittipoco Jungspund

    Dabei seit:
    25.09.2006
    Beiträge:
    21
    Zustimmungen:
    0
    ist kein tippfehöer mit dem Ö .. aber das wird bei mir anders dargestellt

    ich habe jetzt
    '{print SERVER,$1,\073;\073,$6}' - aber es funktioniert leider immern noch nicht :/
    syntax error The source line is 1.
    The error context is
    {print SERVER, >>> \ <<< 073;\073 }
    awk: The statement cannot be correctly parsed.
     
  5. #4 Wolfgang, 26.09.2006
    Wolfgang

    Wolfgang Foren Gott

    Dabei seit:
    24.04.2005
    Beiträge:
    3.978
    Zustimmungen:
    0
    Ort:
    Erfurt
    "\073" !=\073

    Gruß Wolfgang
     
  6. #5 Schlaubi_fi.de, 27.09.2006
    Schlaubi_fi.de

    Schlaubi_fi.de Mac OS X User

    Dabei seit:
    22.12.2004
    Beiträge:
    304
    Zustimmungen:
    0
    Sieht so aus, als ob die ö's Pipes, also | wären. Für mich hast Du ein komisches Codierungsproblem - wie ist denn dein Terminal/Shell eingestellt (xterm, vt100 und speziell $LC_*) ??
     
  7. #6 Tittipoco, 27.09.2006
    Tittipoco

    Tittipoco Jungspund

    Dabei seit:
    25.09.2006
    Beiträge:
    21
    Zustimmungen:
    0
    Ja, ich weiss .. das ist etwas ätzend, aber daran kann ich nix machen. Ist Admin sache ... und der hat das halt so eingestellt! was solls :-)

    zum eigneltichen Problem: es funktioniert immer noch nicht , mein Code sieht jetzt wie folgt aus:
    rsh $SERVER -n "cat $LOGGESTERN | grep PrintFile | grep $SUCH | awk -v CLIENT=$SERVER '{print SERVER,$1,"\073";"\073",$6}'" >> "$AUSGABE"
     
  8. #7 Wolfgang, 27.09.2006
    Wolfgang

    Wolfgang Foren Gott

    Dabei seit:
    24.04.2005
    Beiträge:
    3.978
    Zustimmungen:
    0
    Ort:
    Erfurt
    Warum nun wieder das ;? :think:
    Die "\073" ist doch das Semikolon.
    Und wenn du überall innerhalb von print das gedachte Semikolon durch "\073" ersetzt, sollte das gehen.

    Was deine Tastatur lokal angeht, so musst du halt konsequent eng einstellen, wenn sie nunmal engl. ist.

    Gruß Wolfgang
     
  9. #8 Tittipoco, 27.09.2006
    Tittipoco

    Tittipoco Jungspund

    Dabei seit:
    25.09.2006
    Beiträge:
    21
    Zustimmungen:
    0
    Oh, da haben wir uns wohl missverstanden ! Ich dachte das "\073" wären die "" und nicht das ;

    Ich hatte am Anfang
    Das Problem liegt bei dem ";" Das kann aus Gründen des rsh- Aufrufes nicht korrekt übersetzt werden. wie genau kann ich das syntaktisch richtig eingeben ?

    geschrieben. War von mir wohl missverständlich, da man das Problem nur auf das ; beziehen kann, in meinem Fall ist das Problem aber das gesamte, also ";" (Das Huptproblem liegt wohl an den " " da diese innerhab des RSH Befehlst stress machen .. nur verlangt die Syntax von AWK wiederrum die Benutzung von den " ") Was soll man da also machen ?
     
  10. Lumpi

    Lumpi Haudegen

    Dabei seit:
    14.06.2006
    Beiträge:
    663
    Zustimmungen:
    0
    Ort:
    Dessau
    Hallo

    Nimm mal die ASCII-Tabelle und versuche die "nichtlesbaren" Zeichen damit darzustellen.

    Gruß Lumpi
     
  11. #10 Tittipoco, 27.09.2006
    Tittipoco

    Tittipoco Jungspund

    Dabei seit:
    25.09.2006
    Beiträge:
    21
    Zustimmungen:
    0
    guter tipp, funktioniert aber leider auch nicht :(
     
  12. Lumpi

    Lumpi Haudegen

    Dabei seit:
    14.06.2006
    Beiträge:
    663
    Zustimmungen:
    0
    Ort:
    Dessau
    Hallo

    Warum verwendest du nicht ssh?
    Vielleicht funktioniert es ja dann

    Gruß Lumpi
     
  13. #12 Tittipoco, 27.09.2006
    Tittipoco

    Tittipoco Jungspund

    Dabei seit:
    25.09.2006
    Beiträge:
    21
    Zustimmungen:
    0
    no way :/ genau das selbe
     
  14. Lumpi

    Lumpi Haudegen

    Dabei seit:
    14.06.2006
    Beiträge:
    663
    Zustimmungen:
    0
    Ort:
    Dessau
    Hallo

    Deinen Posts entnehme ich, dass du nicht der Admin vom Server bist.
    Erkundige dich doch mal bei dem, ob rsh / ssh überhaupt zugelassen wird.
    Sonst ist alles probieren zwecklos.

    Gruß Lumpi
     
  15. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  16. #14 Tittipoco, 27.09.2006
    Tittipoco

    Tittipoco Jungspund

    Dabei seit:
    25.09.2006
    Beiträge:
    21
    Zustimmungen:
    0
    RSH ist zugelassen, SSH nur bedingt. Deswegen muss ich auch RSH nehmen ! und das funktioniert auch. Ist halt nur das syntaktische Problem

    edit:
    ich habe das ";" einfach mal komplett herausgenommen weil ich da noch eine andere Idee hatte, Jetzt gibt er folgenden Fehlermeldung:

    syntax error The source line is 1.
    The error context is
    {print >>> SERVER,, <<<
    awk: The statement cannot be correctly parsed.
    The source line is 1.

    Zeile sieht im Moment so aus:
    rsh $SERVER -n "cat $LOGGESTERN | grep PrintFile | grep $SUCH | awk -v CLIENT=$SERVER '{print SERVER,$1,$6}'" >> "$AUSGABE"

    kann das vielleicht auch an was ganz anderem liegen, das es mit dem ";" gar nix zu tun hat, er dann nur noch eine andere Fehlermeldung ausgibt ?
     
  17. #15 Wolfgang, 27.09.2006
    Wolfgang

    Wolfgang Foren Gott

    Dabei seit:
    24.04.2005
    Beiträge:
    3.978
    Zustimmungen:
    0
    Ort:
    Erfurt
    Hallo

    Ja ich hatte dein Problem wirklich falsch verstanden.
    Aber IMHO musst du die Variablen vor der remote Shell schützen.
    Das ist ein wenig vertrackt, aber bei genauerem Betrachten sollte es so gehen:
    (mit ssh geht das und rsh verwende ich nicht.)
    Code:
    
    rsh $SERVER -n "cat $LOGGESTERN | grep PrintFile | grep $SUCH | awk -v CLIENT=$SERVER '{print SERVER,\$1,\$6}'" >> "$AUSGABE"
    
    Die Doppelquote führen nämlich dazu, dass die Variablen $1 und $6 von der remote Shell ausgewertet werden.

    Willst du nun noch ein Semikola dazwischen, dann würde ich das so machen:

    Getestet habe ich das mit der ssh in ähnlicher Form.
    Code:
    $ A=Test;
    $ ssh r_host1 "echo wert1 wert2|awk -v Wert=$A '{print Wert\";\",\$2,$1}'"  2>/dev/null
    Test; wert2 wert1
    
    Hoffe es hilft.

    Gruß Wolfgang
     
Thema:

rsh mit awk Syntax problem

Die Seite wird geladen...

rsh mit awk Syntax problem - Ähnliche Themen

  1. probleme mit syntax

    probleme mit syntax: Sers Leute ich mal wieder :> ich hab ein kleines Prob mit meiner shellsyntax #!bin/ksh set cpu `vmstat 2 2 | tail -1` cpu_all=${cpu[14]}...
  2. SED Syntaxproblem

    SED Syntaxproblem: Hallo ich moechte die Ausgabe aus folgendem Konstrukt an eine Variable uebergeben: #!/bin/sh mplayer -vo null -ao null -frames 0 -identify...
  3. iptables Problem mit der Syntax ethx

    iptables Problem mit der Syntax ethx: Hallo, ich habe ein Script für meine eigenen iptables rules geschrieben. Das Startscript funktioniert wunderbar. Die Regeln werden geladen....
  4. Syntax problem bei "grep"

    Syntax problem bei "grep": Halli Hallo, ich lasse eine Datei Zeilenweise auslesen und jeweils die aktuelle Zeile in der Variable $ZEILE speichern. jetzt gibt es einige...
  5. Problem: syntax error near unexpected token `done'

    Problem: syntax error near unexpected token `done': hi leute, hab beim folgenden code probleme!! #!/bin/bash lauf=0 ende=5 while [ $lauf -le $ende ] do find / -atime -6 lauf= expr $lauf+1...