Hallo zusammen,
ich habe eine Textdatei und möchte bestimmte Zeilen mit Zufallszahlen ersetzen. Pro zu ersetzende Zeile soll es eine 10stellige Zufallszahl geben.
Mit einer for-Schleife un z.B "echo $RANDOM" komme ich nicht weiter. Hier werden alle zu ersetzenden Zeilen mit nur einer Zufallszahl ersetzt.
Vielen Dank für Anregungen und Unterstützung im Voraus,
R.B.
Zeilen in Textdatei mit Zufallszahlen ersetzen
-
brum
zeilen
Ja, es wäre schon besser, etwas mehr zu sehen.
Ist die Zufallszahl dann das Zeilenende?
Ich könnte mir als Lösung vorstellen - ich bin aber kein richtiger Programmierer - die Datei Zeilenweise auszulesen. Evtl. einer Schleife und der "head -N|tail -1"-Methode und ebenso zeilenweise eine neue Datei mit "echo >>" erstellen und diese zum Schluß umbenenne.
Perl- und sed-Spezies haben bestimmt etwas anderes auf Lager *g*
Ist die Zufallszahl dann das Zeilenende?
Ich könnte mir als Lösung vorstellen - ich bin aber kein richtiger Programmierer - die Datei Zeilenweise auszulesen. Evtl. einer Schleife und der "head -N|tail -1"-Methode und ebenso zeilenweise eine neue Datei mit "echo >>" erstellen und diese zum Schluß umbenenne.
Perl- und sed-Spezies haben bestimmt etwas anderes auf Lager *g*
-
jan61
Das Problem ist der Zeitpunkt der Ausführung von "echo $RANDOM" - wenn Du sowas z. B. in ein sed-Kommando einbaust, dann wird das von der Shell 1x vor Start des sed ausgeführt. Folgende Schleife sollte es tun:r.b. wrote:Die Zeilen lauten immer UID:TEMP123 und müssen mit UID:"Zufallszahl" ersetzt werden.
Code: Select all
while read l; do
if test "$l" = "UID:TEMP123"; then
echo "UID:$RANDOM"
else
echo "$l"
fi
done <Quelldatei >Zieldatei
Jan