Erzeugen eines HTML-File zur Verwaltung einer Liste von Bild-Dateien

A

anda00

Grünschnabel
Hallo

Ich bin ein Linux Jünger und wir haben gerade als Einstieg angefangen mit Shellscripten. Dabei soll ein HTML-File zur Verwaltung einer Liste von Bild-Dateien erzeugt werden

Das Script soll dazu für eine Menge von Bilddateien ein HTML-File erzeugen, in dem jeweils die Namen der Dateien mit den Bilddateien verlinkt sind.

So das Script das die Namen der Dateien mit den Bildern verlinkt funzelt soweit ... jedoch habe ich mit den folgenden Dingen ein paar Probleme ...
Das in der Übung begonnene Shellscript ist fertig zu stellen bzw. so zu erweitern, dass
- Angabe des Zieldateinamens, d.h., der Name der HTML-Datei kann beim Aufruf angegeben werden
Aufruf : <scriptname> <zieldatei>
- Angabe eines Verzeichnisses, aus dem die Bild-Dateien entnommen werden;
Aufruf : <scriptname> <zieldatei> <quellverzeichnis>
- das Datum und der aktuelle Nutzernamen an den Anfang des Files geschrieben wird (Umgebungsvariable $USER, Kommando date)
- das Script mit einer Fehlermeldung beendet wird, falls das Verzeichnis nicht existiert (Kommando : exit )
- falls das Zielfile bereits existiert, soll abgefragt werden, ob das File angelegt werden soll. Wenn nicht, wird das Script beendet (Kommando : exit)

Vielleicht kann mir da jemand weiter helfen. meine einzige Idee ist das mit if anweisungen vielleicht zu lösen ... jedoch wie gesagt ich hab noch nich so recht den plan davon :( :hilfe2:
 
Tachauch!

- Angabe des Zieldateinamens, d.h., der Name der HTML-Datei kann beim Aufruf angegeben werden
Aufruf : <scriptname> <zieldatei>
- Angabe eines Verzeichnisses, aus dem die Bild-Dateien entnommen werden;
Aufruf : <scriptname> <zieldatei> <quellverzeichnis>
In der BASH wird die Anzahl der übergebenen Parameter in der Variable $# gespeichert, welche du dann mit $1, $2, .., $9 abrufen kannst.

- das Datum und der aktuelle Nutzernamen an den Anfang des Files geschrieben wird (Umgebungsvariable $USER, Kommando date)
Wo liegt das Problem? Wenn ich dich richtig verstehe, schreibst du doch schon Daten in die Zieldatei und bevor du die Bilder auflistest schreibst du - z.B. wie folgend - den aktuellen Usernamen und die Zeit in die Datei.
Code:
echo "$USER" >> <ziel>
echo "`date`" >> <ziel>
Das Zeichen ` bewirkt, dass die darin enthaltenden Befehle ausgeführt und alle Ausgaben zurückgegeben werden.

- das Script mit einer Fehlermeldung beendet wird, falls das Verzeichnis nicht existiert (Kommando : exit )
Beispiel zum Prüfen, ob ein Verzeichnis existiert:
Code:
if [ ! -d test/ver/zeich/nis ]
then
  echo "Verzeichnis existiert nicht!"
  exit 0
fi

- falls das Zielfile bereits existiert, soll abgefragt werden, ob das File angelegt werden soll. Wenn nicht, wird das Script beendet (Kommando : exit)
Beispiel zum Prüfen, ob eine Datei existiert:
Code:
if [ ! -f eine.datei.ext ]
then
  echo "Datei existiert nicht!"
  exit 0
fi

Hoffe ich hab deinen Hausaufgaben etwas geholfen ;)

gruß Karru
 
ah thx für die schnelle antwort ... das prob war die aufgabe ansich nicht nur das verständnis wie hier programmiert wird bzw werden muss.
 
Hallo

Übrigens sollte man die Backtics heute vermeiden.

echo $(date) ist besser lesbar und es kommt nicht zu Verwechslung zwischen ' und `.
Wenn man schon lernt, dann gleich richtig.
Zu den Tests solltest du dir mal man test eingeben.

Eleganterweise würde man eine Eingabeprüfung über eine Funktion lösen.
Linux bietet eine Menge Scripte, die man als Beispiel mal ansehen kann.

Nun viel Spaß beim Lernen.
Gruß Wolfgang
 
Zurück
Oben