Mal nach Terminal verschoben. Ich hoffe dir kann hier eher jemand helfen!
Ergebnis 1 bis 10 von 15
- 25.01.2012, 10:37 #1Fießers Erstling
Themenstarter
- Registriert
- 01.2012
- Beiträge
- 130
Script/Tool zum Schreiben eines Inhaltsverzeichnises in eine Textdatei
Hallo,
Ich suche nach einer einfachen Methode/Script/…, die ein bestimmtes Verzeichnis nach bestimmten Dateien durchsucht und für jede gefundene Datei eine Zeile in eine Text Datei schreibt -> hier eine Beispiel:
1. Angenommen in dem Verzeichnis /usr/Thomas/Bilder/Export/ befinden sich folgende Dateien (Fotos *_f.jpg + Fotothumbnails *_t.jpg):
foto1_f.jpg
foto1_t.jpg
foto2_f.jpg
foto2_t.jpg
foto3_f.jpg
foto3_t.jpg
…..
2. Der gewünschte Script, gestartet in dem obengenanten Verzeichnis, scannt das Verzeichnis nach den Fotos (also nach *_f.jpg bzw *_t.jpg) und generiert für jede gefundene Fotodatei ein Eintrag in eine Textdatei mit folgendem Inhalt:
FESTVORGEGEBENER_TEXT_1 foto1_f.jpg FESTVORGEGEBENER_TEXT_2 foto1_t.jpg FESTVORGEGEBENER_TEXT_3
FESTVORGEGEBENER_TEXT_2 foto2_f.jpg FESTVORGEGEBENER_TEXT_2 foto2_t.jpg FESTVORGEGEBENER_TEXT_3
FESTVORGEGEBENER_TEXT_3 foto3_f.jpg FESTVORGEGEBENER_TEXT_2 foto3_t.jpg FESTVORGEGEBENER_TEXT_3
….
Die FESTVORGEGEBENER_TEXT_1-3 sollten Sonderzeichen wie " : ; /<> enthalten dürfen und können in dem Script fix vordefiniert werden
Das ganze sollte als Input für eine HTML-Foto-Galerie genutzt werden (also HTML-Code) - hier ein "echtes" Beispiel
<td style="vertical-align: middle; height: 140px; width: 200px; text-align: center;"><a class="fancybox-effects-a" href="../images/foto1_f.jpg" data-fancybox-group="gallery2" ><img src="../images/foto1_t.jpg" alt=""></a></td>
Ich habe (noch) keine Ahnung von Scripts, aber ich stelle mir das irgedwie folgendvor (die syntax ignorieren - es ist nur "bilidliche" Darstellung)
VAR1 = FESTVORGEGEBENER_TEXT_1
VAR2 = FESTVORGEGEBENER_TEXT_2
VAR3 = FESTVORGEGEBENER_TEXT_3
$FOTOLISTE = ls *_f.jpg
for $FOTO in $FOTOLISTE
$FOTONAME = $FOTO ohne "_f.jpg"
print VAR1 $FOTONAME_f.jpg VAR2 $FOTONAME_t.jpg VAR3 > textdatei.txt
endGeändert von Mister Cool (25.01.2012 um 11:11 Uhr)
- 26.01.2012, 21:37 #2
Mod-Info.
- 26.01.2012, 21:44 #3Fießers Erstling
Themenstarter
- Registriert
- 01.2012
- Beiträge
- 130
Danke, das hoffe ich auch
- 26.01.2012, 21:52 #4
Ach mir fällt zu deinem Problem ein einfaches Python-Skript ein:
Das könnte funktionieren -- habe es nicht getestet.Code:import glob import os filelist_t = glob.glob("/path/to/files/x*t.jpg") filelist_f = glob.glob("/path/to/files/y*f.jpg") resultlist = [] for i in range(len(filelist_t)): file_path_string_t = filelist_t[i] file_path_string_f = filelist_f[i] filename_t = os.path.split(file_path_string_t)[-1] filename_f = os.path.split(file_path_string_f)[-1] res = "Irgendwas" + filename_t + "was anderes" + filename_f resultlist.append(res) print resultlist
- 26.01.2012, 23:28 #5Fießers Erstling
Themenstarter
- Registriert
- 01.2012
- Beiträge
- 130
das werde ich gleich ausprobieren - herzlichen Dank!!!
- 27.01.2012, 00:05 #6Fießers Erstling
Themenstarter
- Registriert
- 01.2012
- Beiträge
- 130
Hi,
es scheitert leider bereits an dem import glob und import os.
Sind es irgendwelche zusätzliche "Module" zuerst geladen werden müssen (die unter Mac OS 10.7 noch nicht aktiv sind?
Ich bin inzw. weiter gekommen - ich habe folgendes ausprobiert und es funzt!!!
fotolist="$(ls *_f.jpg)"
for foto in $fotolist
do
thumb="$(echo $foto | sed "s/_f.jpg/_t.jpg/")"
echo TXT1 $foto TXT2 $thumb TXT3
doneGeändert von Mister Cool (27.01.2012 um 00:33 Uhr)
- 27.01.2012, 00:26 #7Gelber Richard
- Registriert
- 12.2005
- Ort
- Alzenau
- Beiträge
- 12.365
Mit Skripten kenne ich mich wenig aus, ich bastle da immer ziemlich nach dem Try-and-Error-Prinzip, aber ist die Angabe im Eröffnungspost wirklich so gedacht, daß daß an der ersten Stelle eine wechselnde Variable steht und nicht immer Fest_vorgegebener_Text_1? Das würde das Skript sicher erheblich vereinfachen, wenn da nicht immer neue Variablen eingelesen werden müssten.
- 27.01.2012, 00:57 #8Fießers Erstling
Themenstarter
- Registriert
- 01.2012
- Beiträge
- 130
Hi,
ich habe auch gerade als absoluter Neuling den Siebenzeiler ausgetüftelt, und bin mir nicht sicher was du meinst.
Die Reihenfolge: TXT1 variable1 TXT2 variable2 TXT2 ist durch den gewünschten HTML-Code vorgegeben -> siehe oben :.hier ein "echtes" Beispiel..
- 27.01.2012, 02:03 #9Gelber Richard
- Registriert
- 12.2005
- Ort
- Alzenau
- Beiträge
- 12.365
Du wechselst oben in der ersten Spalte von 1 auf 2 auf drei, in Spalte 2 und 3 bleiben die Variablen immer auf 2 und 3.
Ich vermute mal, daß auch in der ersten Spalte immer, in jeder Zeile 1 stehen sollte (das wäre eine vergleichsweise simple Skriptvariante).
Muß aber nicht sein.
Nur solltest du dann, wenn es wirklich so sein sollte, auch angeben, woher die Variablen der ersten Spalte kommen, nachdem die dritte Datei abgearbeitet wurde. Wird dann die Variable immer automatisch um einen Zähler am Ende erhöht oder wird sie irgendwo ausgelesen?
- 27.01.2012, 08:46 #10


Zitieren
