Zeile einlesen, zu Zahl eines addieren, neu speichern

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Benutzeravatar
badera
Beiträge: 643
Registriert: 20.05.2004 20:01:50
Wohnort: Schweiz

Zeile einlesen, zu Zahl eines addieren, neu speichern

Beitrag von badera » 22.12.2005 10:39:07

Hallo zusammen

Ich bin einfach noch nicht so der bash-Held, damit ich diese sicher einfache Aufgabe lösen könnte:

Ich habe eine Datei lexversion, dort steht z.B. folgendes drin:

Code: Alles auswählen

LexVersion=5
jetzt möchte ich mit einem Skript ereichen, dass dort drinn anschliessend

Code: Alles auswählen

LexVersion=6
steht.

Die Zahl hinten soll also einfach um eins incrementiert werden.
Folgendes kenn ich bereits:

Code: Alles auswählen

cat lexversion | grep LexVersion=
Spuckt mir die Zeile raus. Jetzt sollte ich den String vorne abschneiden, so dass ich nur noch die Zahl habe. Anschliessend die Zahl in einen Integer umwandeln, eins addieren und mit echo wieder in die Datei schreiben (überschreiben). (Also in der Datei steht nur diese Zeile drin)

Für Euch sicher Aquanasales, oder? Kann mir jemand die Syntax schnell verraten? Also ein C-Programm zu machen wäre sicher einen Witz. Oder was denkt ihr?
Vielen Dank
- Adrian

Benutzeravatar
C_A
Beiträge: 1082
Registriert: 22.04.2004 14:51:01
Lizenz eigener Beiträge: GNU General Public License

Beitrag von C_A » 22.12.2005 11:35:23

Kleine Hilfe:

Code: Alles auswählen

      1 #!/bin/bash
      2
      3 zahl=`cat testfile|egrep ^LexVersion=|cut -d"=" -f2`
      4 #echo $zahl
      5 #echo `expr $zahl + 1`
      6 echo "LexVersion=`expr $zahl + 1`"

Benutzeravatar
badera
Beiträge: 643
Registriert: 20.05.2004 20:01:50
Wohnort: Schweiz

Beitrag von badera » 22.12.2005 11:40:38

8O
Ich danke Dir viel mal!! So einfach wenn man weiss wie!!
Habe sogar begriffen wies funktioniert; Danke!
- Adrian

Antworten