4 Stimmen

Parsing der Befehlsausgabe in einem Bash-Skript

Ich möchte einen Befehl ausführen, der die folgende Ausgabe liefert, und diese analysieren:

[VDB VIEW]
[VDB] vhctest
        [BACKEND] domain.computername: ENABLED:RW:CONSISTENT
        [BACKEND] domain.computername: ENABLED:RW:CONSISTENT
        ...

Ich bin nur an einigen Schlüsselwerken interessiert, wie z. B. 'ENABLED' usw. Ich kann nicht nur nach ENABLED suchen, da ich jede Zeile einzeln analysieren muss.

Dies ist mein erstes Skript, und ich möchte wissen, ob mir jemand helfen kann?

EDIT: Ich habe jetzt:

cmdout=`mycommand`

while read -r line
do
   #check for key words in $line
done < $cmdout

Ich dachte, dass dies das tut, was ich wollte, aber es scheint immer das Folgende direkt vor der Befehlsausgabe auszugeben.

./myscript.sh: 29: kann nicht öffnen ... : Keine solche Datei

Ich möchte nicht in eine Datei schreiben, um dies erreichen zu müssen.

Hier ist der psudo-Code:

cmdout=`mycommand`

loop each line in $cmdout
   if line contains $1
       if line contains $2
            output 1
       else
            output 0

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X