Zeilenweise auslesen und in Variable speichern / übergeben

A

AlexNBG276

Jungspund
Hallo,

bin noch ein unix-shell-script-neuling...

ich möchte gerne aus einer Datei, jede einzelne zeile (eine Zahl) auslesen und sie in einem Shell-Script in eine Variable speichern/übergeben, die dann eine Prozedur durchläuft. Am Ende soll das Ergebnis für jede Zahl in eine neue Datei gespeichert werden (auch wieder zeilenweise). Leider komme ich hier nicht weiter / die Übergabe funktioniert nicht. Hier mein bisheriges Vorgehen:

cat zahlen.txt
while read line
do
export zahl=$line
# Prozedur
echo $ergebnis >> ergebnis.txt
done


Vielen Dank für Support!
 
Zuletzt bearbeitet:
Probiers mal so:

Code:
while read line; do
    zahl="$line"
    # Prozedur:
    echo "$line" >> ergebnis.txt
done < zahlen.txt
 
Zuletzt bearbeitet:
vielen dank... zum besseren verständnis:

die Datei zahlen.txt sieht folgendermaßen aus:

00010000387184
00020000387184
00010000387185
00010000401062
00010000804631
00010000804641
00010000805261
00010000805341
00010004008406
00010004008418
usw.

wenn ich die variable zahl mit einem wert zb. 00010004008418 hardcodiere funktioniert die prozedur richtig und das ergebnis wird auch in die datei ergebnis.txt ausgegeben.

Wenn ich nun jede einzelne zeile der zahlen.txt einlesen will, bekomme ich für die Berechnung einen Syntaxfehler. ("syntax error on line 1") - liegt es daran, dass es ein String ist?
 
Zeige bitte Code. :-) Wie sieht deine Berechnung aus?
 
also, habs eben nochmal mit deiner Lösung

while read line; do
zahl="$line"
# Prozedur:
echo "$line" >> ergebnis.txt
done < zahlen.txt

probiert...

hat so funktioniert, wie ich es mir gewünscht hatte!!! Vielen dank!
 
Zur Ergänzung:
Du kannst in der Bash und Zsh den Output am Ende der while-Schleife auffangen:
Code:
while read line; do
  echo "$line"
done < inputfile > outputfile
 

Ähnliche Themen

Summe von Zahlen in einer Zeilen bilden

Zeile für Zeile auslesen und Befehl ausführen

Parameter einer Variable zuordnen

Werte in 2 Variablen subtrahieren

Last mit etc/passwd anzeigen lassen

Zurück
Oben