GWFgamer
Ensign
- Registriert
- Juli 2006
- Beiträge
- 167
Hallo liebe Community,
ich schreibe gerade ein Sh- Script (unter Solaris) und komme leider alleine nicht weiter, daher bitte ich um Hilfe
Ich habe folgenden Code Schnipsel, der, wenn man in die Konsole eingibt, prima funktioniert:
Der Inhalt der DATEI.TXT ist ausschliesslich eine Zahl, z.B. die 10. Diese soll in der Variable AB gespeichert und um 1 nach oben gezählt werden. Anschliessend wird die Zahl aus der Datei gelöscht und der Inhalt der Variable in die Datei geschrieben.
Funktioniert soweit auch sehr gut. Wenn ich dies allerdings in ein bestehendes Script einfuege (in dem es die AB Variable natuerlich noch nicht anderweitig gibt), dann funktioniert das Inkrementieren leider nicht.
Fehlermeldung:
Habt ihr ne Idee woran das liegen koennte? Vielen Dank!
Das ist natuerlich typisch, den ganzen Vormittag gesucht und dann 20 Minuten nach dem Post die Lösung finden ^^
Ich habe einfach
durch
ersetzt. Nur falls mal jemand das selbe Problem haben sollte ^^
Warum die erste Version im Script nicht funktioniert, keine Ahnung
ich schreibe gerade ein Sh- Script (unter Solaris) und komme leider alleine nicht weiter, daher bitte ich um Hilfe
Ich habe folgenden Code Schnipsel, der, wenn man in die Konsole eingibt, prima funktioniert:
Code:
AB=`cat DATEI.TXT`
AB=$((AB + 1))
sed 'd' DATEI.TXT > DATEI.TXT
echo $AB> DATEI.TXT
Der Inhalt der DATEI.TXT ist ausschliesslich eine Zahl, z.B. die 10. Diese soll in der Variable AB gespeichert und um 1 nach oben gezählt werden. Anschliessend wird die Zahl aus der Datei gelöscht und der Inhalt der Variable in die Datei geschrieben.
Funktioniert soweit auch sehr gut. Wenn ich dies allerdings in ein bestehendes Script einfuege (in dem es die AB Variable natuerlich noch nicht anderweitig gibt), dann funktioniert das Inkrementieren leider nicht.
Fehlermeldung:
Code:
./IN_SCRIPT.sh: syntax error at line 101: `AB=$' unexpected
Habt ihr ne Idee woran das liegen koennte? Vielen Dank!
Ergänzung ()
Das ist natuerlich typisch, den ganzen Vormittag gesucht und dann 20 Minuten nach dem Post die Lösung finden ^^
Ich habe einfach
Code:
2.AB=$((AB + 1))
durch
Code:
AB=`expr $AB + 1`
ersetzt. Nur falls mal jemand das selbe Problem haben sollte ^^
Warum die erste Version im Script nicht funktioniert, keine Ahnung
Zuletzt bearbeitet: