Mailinglist Archive: opensuse-de (1497 mails)

< Previous Next >
Re: Ein wenig Hilfe bei einem Skript
  • From: Axel Birndt <towerlexa@xxxxxx>
  • Date: Tue, 04 Dec 2007 12:55:55 +0100
  • Message-id: <4755404B.30809@xxxxxx>


Dennis Neumeier schrieb:
Zunächst mal danke für die Antwort!

Da ich in Skript-Sachen manchmal ein wenig unbeholfen bin, nehm ich doch mal den Vorschlag auseinander:

files="$( find . -name *.jpg )"

Zum einen geht das so gar nicht, weil Amarok die Bilder ohne Dateityp abspeichert. Zum anderen wundert mich der "find"-Befehl darin ein wenig. Ich hab da einfach immer nur "for i in *.jpg" (bzw "for i in *") verwendet. Gibts einen Grund für die Version mit "find"?

Klar, funktioniert for i in *.jpg auch zum absteigen in Unterverzeichnisse? Hab ich jetzt so noch nicht getestet...

for file in $files
do
echo $file
DIRNAME_FILE="$( dirname $file)"

Dann sollte man doch aber auch noch ein entsprechendes Verzeichnis generieren, oder:

mkdir $file
naja, eher dann mkdir $DIRNAME_FILE
oder mkdir ${DIRNAME_FILE}_001


BASENAME_FILE="$( basename $file )"

Ich verwende den Basename direkt, deshalb erachte ich diese Zeile als überflüssig. Oder hat das was mit guter Programmierung zu tun?

naja für mich erhöht dies die Übersichlichkeit. Da Du etwas durch die Blume angedeutet hattest im Scripting so am Anfang zu stehen, habe ich es extra einfach und übersichtlich gehalten. Wenn du magst kann ich es Dir auch gern als Einzeiler schreiben... ;)

echo $DIRNAME_FILE
echo $BASENAME_FILE
ZIELFILE="${DIRNAME_FILE}/cover.bmp"
echo "convert **** $file *** \> $ZIELFILE"

Okay, die Zeile ist dann klar und lautet im Original:

convert $i $i.bmp

done

Bis dahin brauchen wir noch ein wenig...
Soo, das Script von mir war ja auch nur ein erster schneller Schuß ins Blaue... Weil Deine Vorgaben doch noch ziemlich ungenau waren, habe ich erstmal das Script auch ein bissl so als "PseudoScript" geschrieben.
Hättest Du so ausführen können, ohne das etwas passiert wäre außer eben ein paar Ausgaben am Bildschirm.

Ich finde, es ist sehr wichtig, Scripts so zu schreiben, das sie

a) übersichtlich sind
b) auch von einem Anfänger verstanden werden können.

PS: Das macht es auch für mich leichter, meine eigenen Scripts nach längerer Zeit noch zu verstehen und ändern zu können ;) ;)

Also wenn Du noch Hilfe brauchst einfach wieder schreiben.

Gruß,
Dennis

--
Um die Liste abzubestellen, schicken Sie eine Mail an:
opensuse-de+unsubscribe@xxxxxxxxxxxx
Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken
Sie eine Mail an: opensuse-de+help@xxxxxxxxxxxx

< Previous Next >
Follow Ups