it-fraggle
Goto Top

Hilfe beim Bashscript benötigt

Hallo,

gleich zu meiner Verteidigung: Ich scripte sehr, sehr selten mal was, weil es sich kaum ergibt. Dem entsprechend sind meine Kenntnisse begrenzt. Nun ist es aber wieder soweit.

Mein Ziel:
Ich habe ein Verzeichnis mit circa 3.000 xml-Dateien. Der Dateiname ist in wie folgt aufgebaut: AAA-1234-1234.xml
Das Script soll die Dateinamen einlesen und der Reihe nach abarbeiten und Bestandteile des Dateinamens in eine CSV-Datei packen. Der Inhalt der CSV sähe dann so aus:
AAA;1234;http://10.0.0.1/AAA-1234-1234.xml

Meine Lösungsidee war dann die folgende

for i in $(ls)
do
VAR1=$i | cut -d '-' -f1
VAR2=$i | cut -d '-' -f2
VAR3="http://10.0.0.1/$i"
echo $VAR1;$VAR2;$VAR3
done

Was so schön gedacht war funktioniert leider nicht. Wer kann mir da helfen?

Danke im Voraus.

Content-ID: 373904

Url: https://administrator.de/contentid/373904

Ausgedruckt am: 23.11.2024 um 12:11 Uhr

Lochkartenstanzer
Lochkartenstanzer 15.05.2018 aktualisiert um 08:35:23 Uhr
Goto Top
Moin,

Skript für einen Einzeiler?

  echo "AAA-1234-1234.xml" | gawk -F "-" ' { print $1 ";" $2 ";http://10.0.0.1/" $1 "-" $2 "-" $2 ".xml" } ' 
oder falls die Ausgabe von ls verwendet werden soll:

 ls  | gawk -F "-" ' { print $1 ";" $2 ";http://10.0.0.1/" $1 "-" $2 "-" $2 ".xml" } ' 


Achtung: Es findet natürlich keinerlei Überprüfung statt, ob der Dateiname auch korrekt ist! das muß man ggf noch verifizieren!

lks
it-fraggle
it-fraggle 15.05.2018 um 08:36:45 Uhr
Goto Top
Vielen, vielen, lieben Dank face-smile
Lochkartenstanzer
Lochkartenstanzer 15.05.2018 um 08:50:58 Uhr
Goto Top
Zitat von @it-fraggle:

Vielen, vielen, lieben Dank face-smile

Gern geschehen. Wenn's das war, dann Wie kann ich einen Beitrag als gelöst markieren? nicht vergessen.

lks