PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Datei auslesen und jede zeile ergibt einen Link



ramon
04-04-2004, 20:45
Hallo,

ich habe wahrscheinlich ein ganz einfaches Thema. Leider suche ich bisher vergebens.

Ich habe eine Datei : DirName.txt
in diese habe ich mit ls >>Dirname.txt Verzeichnisnamen gebracht.
Alle Zeilen beginnen mit einer Jahreszahl.
Nun möchte ich folgedes anstellen :

a) die Datei Zeile für Zeile auslesen
b) aus den Ziffern 1-4 (Jahr) ein Verzeichnis in "/links" erstellen
c) vor jede Zeile das Quell-Verzeichnis (/Bilder) setzen
d) in das Verzeichnis "/links/Jahr" einen Link zu dem entsprechenden Quell-Verzeichnis

Beispiel :
Die ersten Zeilen in meiner Datei sind :
1972.03.05. Frankreich 1. Urlaub
1972.06.07. Frankreich 2. Urlaub
1973.09.02. Frankreich 3. Urlaub

jetzt sollen Verzeichnise entstehen :
/links/1972
/links/1973

in diesen Verzeichnissen sollen dann symboliche Links sein
ln -s /Bilder/1972.03.05. Frankreich 1. Urlaub /links/1972/1972.03.05. Frankreich 1. Urlaub
ln -s /Bilder/1972.06.07. Frankreich 2. Urlaub /links/1972/1972.06.07. Frankreich 2. Urlaub
ln -s /Bilder/1973.09.02. Frankreich 3. Urlaub /links/1973/1973.09.02. Frankreich 3. Urlaub

kann mir jemand helfen ?

dakjo
04-04-2004, 21:27
Nur selber machen bildet. Entweder du liest linuxfibel (http://www.linuxfibel.de/bashprog.htm)
oder du machst es vielleicht mit perl Einführung in perl (http://perl-seiten.bei.t-online.de/) .

Einfach dir jetzt nen script zu posten find ich doof .

oafish
05-04-2004, 14:32
Hm, denke das ist relativ leicht zu machen. Im Prinzip reicht der Befehl cut!
Zeilenweise einlesen kannst du mit

while read line;do
# in $line ist die zeile
done<DeineTextdatei.txt

oder

for line in $(cat DeineTextdatei.txt);do

done

Jetzt musst du nur noch ein:
var=$(echo $line|cut -f1)
machen und du hast Dein Jahr

Der rest geht genauso.

Grüßle
oafish

ramon
05-04-2004, 20:55
@oafish,
danke, das probier ich jetzt mal aus.