Script um Zeilen aus einer Datei an eine bestimmte Stelle in einer anderen Datei zu kopieren
Hallo zusammen,
ich habe folgendes Problem, ich habe Paketlisten die ungefähr so aussehen:
...
;Paket1;x86_64;;;#
;Paket2;x86_64;;;#
;Paket3;x86_64;;;#
...
Nun habe ich noch die einzelnen Dateien (z.B. Paket1.x86_64.rpm). Diese haben in einer Zeile stehen, für was dieses Paket verwendet wird (z.B. Verwendung: Konfiguration).
Ich möchte nun, dass genau diese Zeile (Verwendung des Pakets) in der Paketliste s.o. hinter der # des jeweils richtigen Pakets landet.
Da die Paketliste viel zu lang ist, hätte ich hierfür gerne ein Bash Script, dass dies automatisch erledigt.
Ich hoffe Ihr könnt mir helfen und bedanke mich vorab für eure Antworten.
ich habe folgendes Problem, ich habe Paketlisten die ungefähr so aussehen:
...
;Paket1;x86_64;;;#
;Paket2;x86_64;;;#
;Paket3;x86_64;;;#
...
Nun habe ich noch die einzelnen Dateien (z.B. Paket1.x86_64.rpm). Diese haben in einer Zeile stehen, für was dieses Paket verwendet wird (z.B. Verwendung: Konfiguration).
Ich möchte nun, dass genau diese Zeile (Verwendung des Pakets) in der Paketliste s.o. hinter der # des jeweils richtigen Pakets landet.
Da die Paketliste viel zu lang ist, hätte ich hierfür gerne ein Bash Script, dass dies automatisch erledigt.
Ich hoffe Ihr könnt mir helfen und bedanke mich vorab für eure Antworten.
Please also mark the comments that contributed to the solution of the article
Content-Key: 296507
Url: https://administrator.de/contentid/296507
Printed on: April 24, 2024 at 01:04 o'clock
2 Comments
Latest comment
Noch weniger detaillierte Infos zum Vorhaben gingen wohl nicht ?? Na dann:
fk
#!/bin/bash
LIST="./packetlist.txt"
data=$(cat "$LIST")
for rpm in *.rpm ;do
name=$(echo $rpm | cut -d '.' -f 1)
arch=$(echo $rpm | cut -d '.' -f 2)
usage=$(grep -Poi 'Verwendung:.*' "$rpm")
data=$(echo "$data" | sed -re "s/(^;$name;$arch;.*)/\1 $usage/i")
done
echo "$data" >"$LIST"