Wir haben eine Datei namens coords.txt wo Tonnen von Koordinaten aufgelistet sind. Wir möchten sie Zeile für Zeile lesen und etwas mit ihnen machen, aber zuerst müssen wir x, y und z setzen.Wie interpretiere ich Koordinaten mit Shell-Skript?
coords.txt:
0, 0, 0
1, 1, 1
232, 434, 434
644, 322, 112
shell.shEDIT:
coord_reader='^[0-9], [0-9], [0-9]'
while IFS='' read -r line || [[ -n "$line" ]]; do
echo $line
if [[ $line =~ $coord_reader ]]; then
x=${BASH_REMATCH[1]}
y=${BASH_REMATCH[2]}
z=${BASH_REMATCH[3]}
echo "x is $x, y is $y, z is $z"
else
echo "wrong"
fi
done < "$1"
Wir starten Sie es bash shell.sh coords.txt
Sieht aus wie es ein Problem in die coord_reader, bekomme ich nur ein Ergebnis für x.
Ich bin neu in Stackoverflow, fühlen sich frei, dies kommentieren kann ich meine fragen Fähigkeiten verbessern.
Thx für die '|| [[-n $ line]] 'info btw :) Ich werde es überprüfen! – realKSMC
Nun, wenn ich nur ein paar weniger Koordinaten in der Datei bekomme, funktioniert es, aber mit mehr als 5000 Einträgen funktioniert es nicht:/Wie behebt man das? – realKSMC
Nichts an diesem Code schlägt eine obere Grenze für die Anzahl der Zeilen vor, die er verarbeiten kann. Leistung wird langsam sein, aber es sollte immer noch funktionieren. – chepner