Resultat von entferntem Unix Script Aufruf auswerten

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von KrustyDerClown, 26.06.2012.

  1. #1 KrustyDerClown, 26.06.2012
    KrustyDerClown

    KrustyDerClown Grünschnabel

    Dabei seit:
    03.04.2009
    Beiträge:
    5
    Zustimmungen:
    0
    Hallo Zusammen,

    ich habe folgenden Aufruf in meinem Script auf Server myServer1:

    ssh -o IdentityFile=/home/.ssh/s_user s_test2@kippol1 "cd /home/tmp ; ls -t test*.rdy|tail -1;"

    Wie kann ich das Ergebnis von meinem "ls" Befehl auswerten und das Ergebnis in meinem Script auf myServer1 nutzen?

    Kann mir hier jemand helfen? Geht das überhaupt?

    Vielen Dank vorab!

    Viele Grüße
    Oliver
     
  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 Gast123, 26.06.2012
    Zuletzt von einem Moderator bearbeitet: 26.06.2012
    Gast123

    Gast123 Guest

    Edit:
    Code:
    ssh -o IdentityFile=/home/.ssh/s_user s_test2@kippol1 'cd /home/tmp ; ls -t test*.rdy|tail -1;exit  ${PIPESTATUS[0]}'; echo $?
    
     
  4. #3 KrustyDerClown, 27.06.2012
    KrustyDerClown

    KrustyDerClown Grünschnabel

    Dabei seit:
    03.04.2009
    Beiträge:
    5
    Zustimmungen:
    0
    Funktioniert bei mir leider nicht.

    Wenn ich es von der Syntax her so lasse mit einfachem Hochkomma (') dann erhalte ich:

    PIPESTATUS: Undefined variable

    Wenn ich die Syntax so belasse wie oben und ergänze "nur" ${PIPESTATUS[0]} dann erhalte ich keine unterschiedlichen Ergebnisse im Ergebnis.

    No match
    0

    oder

    test1.rdy
    0

    Ziel ist es herauszufinden (und zurückzugeben) ob eine Ready Datei vorhanden ist.

    Viele Grüße
    Oliver
     
  5. #4 Gast123, 27.06.2012
    Gast123

    Gast123 Guest

    Dann benutzt du auf dem entfernten Rechner keine bash.
    Entweder packst du die Kommandozile in ein Bash Skript, oder du schaust dir selbst an, wie man den Pipe-Status bei der Shell deiner Wahl abfragen kann.
    Die Hochkommata sind übringens wichtig. Wenn du anführungszeichen verwendest, wird das lokale Skript versuchen, die PIPESTATUS Array auszuwerten. Das ist jedoch ja nicht das, was gewollt ist und dabei würde nur Humbug rauskommen.

    MfG

    Schard
     
  6. #5 floyd62, 27.06.2012
    floyd62

    floyd62 Routinier

    Dabei seit:
    01.05.2007
    Beiträge:
    309
    Zustimmungen:
    0
    Hi,

    du kannst ja mal versuchen, dein bisheriges Kommando einfach in backticks `...` (oder, wenn lokal bash, in $(...)) zu packen (und die Fehlerausgabe, die ls erzeugt, wenn keine solchen Dateien existieren ins Nirvana zu jagen). Das gibt dann etwas wie
    Code:
    OLDEST=`ssh -o IdentityFile=/home/.ssh/s_user s_test2@kippol1 "cd /home/tmp ; ls -t test*.rdy 2>/dev/null | tail -1"`
    [ "$OLDEST" ] && echo Datei existiert || echo "Keine *.rdy-Dateien in /home/tmp auf kippol1"
    
    Gruss, A.
     
Thema:

Resultat von entferntem Unix Script Aufruf auswerten

Die Seite wird geladen...

Resultat von entferntem Unix Script Aufruf auswerten - Ähnliche Themen

  1. sed Resultat in Variable speichern

    sed Resultat in Variable speichern: Hallo zusammen Ich versuche das Resultat der folgenden Zeile in einer Variable zu speichern und auszugeben: a="/a/b/c/d/e/f.mov"|sed 's!.*/...
  2. Gnome will sich auf entferntem Rechner einloggen, ich aber nicht.

    Gnome will sich auf entferntem Rechner einloggen, ich aber nicht.: Hi, ich hab gestern mal probeweise den GL-Desktop im entsprechenden GUI-Dialog aktiviert. Danach ging Gnome nicht mehr. (Gnome startete und ich...
  3. KDE: Desktop auf entferntem Rechner einrichten

    KDE: Desktop auf entferntem Rechner einrichten: Hi all, ich habe die Aufgabe, einigen entfernt sitzenden Homeworkern einen KDE-Desktop unserer Maschine im Keller zukommen zu lassen. Das ganze...