Hallo thiago10,
einen großen Teil deiner Fragen hat ja bereits seahawk1986 beantwortet.
Das von dir genutzte Script verwendet im Wesentlichen den "sed" Befehl. Die Bedeutung einiger Switches hast du ja bereits selbst heraus gefunden. Allerdings werden in dem Script einige "erweiterte" Funktionen (z.B. Schleifen und Nutzung div. Buffer) von sed verwendet weshalb ich dies Schritt für Schritt erläutert habe. Sed (aber auch andere Befehle/Sprachen) verwenden "reguläre Ausdrücke" (regex), die es einem ermöglichen komplexe Suchen durchzuführen und zu behandeln. Am Anfang wird man davon wenig verstehen. Hier lohnt es sich aber in die Materie einzuarbeiten.
Prinzipiell kannst du jede Programmieraufgabe mit den Werkzeugen lösen, die dir am besten gefallen. Dies kann z.B. die bash Shell mit den mächtigen Befehlen wie sed oder awk sein oder du verwendest eine Programmiersprache deiner Wahl (perl, ruby, js, java, python, C/C++ usw.).
Wie würde der Befehl für die Ausgabe einer csv Datei in meinem Fall konkret aussehen? Das Beispiel erzeugt aber keine csv Datei oder?
Doch, die Ausgabe mit dem Semikolon als Trennzeichen kann in eine csv Datei (z.B. ergebnis.csv) geleitet und von einem Tabellenkalkulationsprogramm (z.B. localc) geöffnet/weiterverarbeitet werden.
Obiges Beispiel modifiziert:
echo -e "bla 1\nbla 2\nTime = 11.02.2021\nbla 3\nbla 4 Liquid pen 12.345\nbla 5\nTime = 12.02.2022\nBla 6\nLiquid pen 45.67e-2\nBla 7" |
sed -n '/^Time = /{:a;N;/Liquid pen/!ba;s/\n/\t/gp}' |
sed -n "s/^Time = \([-e\.0-9]\+\).*Liquid pen.* \([-e\.0-9]\+\)/\1;\2/p" >ergebnis.csv
localc ergebnis.csv
Den ersten sed Befehl habe ich in ' und nicht in " eingefasst, damit das "!" Zeichen bei der interaktiven Nutzung keine Seiteneffekte (z.B. bash bang) verursacht. Bei "LibreOffice Calc" (localc) wirst du gefragt, wie die Daten zu interpretieren sind. Da die Zahlen mit Dezimal-Punkt eingetragen sind und im der deutschen Einstellung ein Dezimal-Komma verwendet wird, müsstest du bei localc beim Import die 2. Spalte mit den Zahlen auswählen und den Spaltentyp "Standard" in "US-Englisch" ändern, bevor du die Daten mit "OK" einliest.
Hast du vielleicht eine Literaturempfehlung wie ich mir die Bash-Programmierung näher beibringen könnte?
Hier sei auf das Scripting Guide für Anfänger dieses Web-Auftritts verwiesen. Als sehr gutes "Handbuch" ist das Advanced Bash-Scripting Guide zu empfehlen.