Hallo Marc
Ich habe eine Datei namens "Datei", in dieser stehen ganz viele Zeilen, unter anderem auch diese:
startINHALTendeWenn ich nun folgendes Kommando in der Shell ausführe, bekomme ich die Zeile zurück:
grep 'start.*ende' Datei
Ich möchte aber nicht die ganze Zeile, sondern nur INHALT zurück bekommen, also ausschließlich das was zwischen "start" und "ende" steht.
Lese Ausgabe von grep in die Variable var ein
Parameter -o ist überflüssig, wenn die Zeile nur den Suchtext enthält
var=$(grep -o 'start.*ende' datei)
Werte den Ausdruck per Mustererkennung aus
erg=$(expr match $dat 'start*([^ ]*)ende')
Die Variable erg enthält nun INHALT, Du kannst mit $erg auf die Variable zugreifen.
Freundliche Grüße
Vinzenz