[lug-ld] Bash scripting

Ekki Plicht (DF4OR) ekki at plicht.de
Fr Dez 14 18:24:24 CET 2018


ALf,
wieso eine Zeile ändern?
Zu Beginn des Scripts lädst Du die ganze Datei, also alle Variablen aus
dieser Datei einlesen.
Dann machst du irgendwas (änderst die Variablen)
Und zum Schluss schreibst Du die ganze Datei wieder weg.

Gruß,
Ekki




Am Fr., 14. Dez. 2018 um 17:06 Uhr schrieb Jean-Jacques Sarton <
jj.sarton at t-online.de>:

> Am 14.12.18 um 14:00 schrieb alf at alfmoni.de:
> > Danke für die Antworten!!!
> >
> > Christian, die Überprüfungen habe ich eingebaut und im Fehlerfall gibt
> es einen Logeintrag... aber Danke für den Tipp!!
> >
> > Das auslesen der von dir genannten „eine“ Datei ist kein Problem... aber
> wie ändere ich einzelne Zeilen in dieser Datei... es ändert sich ja nicht
> immer die komplette Datei, sondern nur einzelne Werte... mit echo >> Datei
> komme ich nicht weit...
> > Grüße
> > Alf
> >
> Ein Zauberwort könnte "ed" lauten, es ist aber für Hart gesottenen.
>
> Jean-Jacques
>
> > Am 14.12.2018 um 13:50 schrieb Christian Ehrhardt <
> Paelzer+lugld at gmail.com <mailto:Paelzer+lugld at gmail.com>>:
> >
> >>
> >>
> >> On Thu, Dec 13, 2018 at 9:32 PM alf at alfmoni.de <mailto:alf at alfmoni.de>
> <alf at alfmoni.de <mailto:alf at alfmoni.de>> wrote:
> >>
> >>     Hallo Bash Profis ;)
> >>
> >>     Ich habe da ein Problem, für das ich zwar schon eine Lösung habe,
> aber ich mal wissen wollte wie da die allgemeine Vorgehensweise ist.
> >>     Ich habe da ein Script,  wo ich Berechnungen ausführe... das
> Ergebnis habe ich als Variable im Script...
> >>     Diese Variable will ich beim nächsten Ausführen des selben Scripts
> in die Berechnung aufnehmen... momentan mache ich das so, dass ich diesen
> Wert per Echo > Datei als Datei speichere.
> >>     Wenn ich diesen Wert im Script brauche, definiere ich eine Variable
> mit cat (x=‘cat Datei’)
> >>
> >>
> >> Schön ist die Lösung nicht, aber funktional alle mal.
> >> Aber an der Stelle darauf achten, dass nichts unerwartetes ankommt und
> später zu Problemen führt.
> >> Also wenigstens:
> >> 1. Prüfen ob die Datei existiert [ -f ... ]
> >> 2. Ggf prüfen das die Datei nur eine Zeile hat (wc -l o.Ä.)
> >> 3. Sonderzeichen strippen (durch strings pipen)
> >> 4. Je nach Variablenart prüfen ob der typ hinterher stimmt (Zahl,
> String, ...)
> >> 5. Besser abbrechen bevor mit unerwartetem Inhalt gearbeitet wird
> >>
> >> Ich habe auch schon gesehen dass einfach das assignment in die Datei
> serialisiert wird.
> >> Also die Datei (eine reicht) dann folgendes enthält:
> >> var1="foo"
> >> var2="bar"
> >> var3="foobar"
> >>
> >> Das kann man dann ganz einfach einlesen mit:
> >>    source Datei
> >> Das wird den Inhalt ausführen und danach sind die Variablen zugewiesen.
> >> Doch das hat wieder ein Vertrauensproblem, wenn jemand anderes code in
> die Datei packt wir auch der mit ausgeführt.
> >>
> >>     Ich bin da jetzt selbst drauf gekommen, habe es also nirgends
> gelesen oder so...
> >>     Daher meine Frage an euch Spezialisten... Ist das eine normale
> Vorgehensweise und wie kann ich das anders machen...  vor allem, wenn ich
> da mehrere Werte “auslagere”... das wird dann recht unübersichtlich im
> Dateisystem...
> >>
> >>     Lg
> >>     Alf
> >>     _______________________________________________
> >>     lug-ld mailing list
> >>     lug-ld at lists.lug-ld.de <mailto:lug-ld at lists.lug-ld.de>
> >>     http://lists.lug-ld.de/mailman/listinfo/lug-ld
> >>
> >> _______________________________________________
> >> lug-ld mailing list
> >> lug-ld at lists.lug-ld.de <mailto:lug-ld at lists.lug-ld.de>
> >> http://lists.lug-ld.de/mailman/listinfo/lug-ld
> >
> > _______________________________________________
> > lug-ld mailing list
> > lug-ld at lists.lug-ld.de
> > http://lists.lug-ld.de/mailman/listinfo/lug-ld
> >
>
>
> _______________________________________________
> lug-ld mailing list
> lug-ld at lists.lug-ld.de
> http://lists.lug-ld.de/mailman/listinfo/lug-ld
>
-------------- nchster Teil --------------
Ein Dateianhang mit HTML-Daten wurde abgetrennt...
URL: http://lists.lug-ld.de/pipermail/lug-ld/attachments/20181214/bf612070/attachment.htm