[gelöst] Befehl für convert?
[gelöst] Befehl für convert?
Hallo Leute!
Ich möchte mit dem Konsolen-Programm convert einen Schwung an Bilder in ein anderes Format konvertieren.
Der Vorgang an sich ist nicht das Problem, da gibt man ja anstelle des Dateinamens einfach nur ein Sternchen ein, mit der Dateiendung und gut. Aber die konvertierten Bilder haben dann alle den Dateinamen *.jpg_1 usw.
Wie müsste der Befehl lauten, damit die konvertierten Dateien den Original-Dateinamen bekommen?
Herzlichen Dank für Eure Hilfe,
Gruß,
Adana
Ich möchte mit dem Konsolen-Programm convert einen Schwung an Bilder in ein anderes Format konvertieren.
Der Vorgang an sich ist nicht das Problem, da gibt man ja anstelle des Dateinamens einfach nur ein Sternchen ein, mit der Dateiendung und gut. Aber die konvertierten Bilder haben dann alle den Dateinamen *.jpg_1 usw.
Wie müsste der Befehl lauten, damit die konvertierten Dateien den Original-Dateinamen bekommen?
Herzlichen Dank für Eure Hilfe,
Gruß,
Adana
Zuletzt geändert von Adana am 23.12.2008 19:52:13, insgesamt 1-mal geändert.
Es gibt keine Probleme, es gibt nur Herausforderungen. Allerdings - es gibt da ja noch Windows...
Meine Drachenaufzucht: http://dragcave.net/user/Helatesu
Meine Drachenaufzucht: http://dragcave.net/user/Helatesu
Re: Befehl für convert?
Hi,Adana hat geschrieben:Wie müsste der Befehl lauten, damit die konvertierten Dateien den Original-Dateinamen bekommen?
ich wüsste nicht, dass das direkt mit convert ginge und erst recht nicht ob ich das wollte. Wenn was schief geht ist dar Original ja weg. Aber mit nem miniscript ist das doch nen Klacks.
Code: Alles auswählen
aktpath=$1
newpath=$2
newsize=$3
qualitaet=$4
cd $1
for bild in *.jpg
do
echo "create " "$newpath/${bild}"
convert "$bild" -resize $newsize\x$newsize -quality $qualitaet "$newpath/${bild}"
done
Grüße, Markus
Re: Befehl für convert?
Hallöchen!
Oh, da habe ich mich wohl nicht klar genug ausgedrückt: ich wollte nicht die Größe ändern, sondern das Dateiformat. z. B. von pcx in jpg.
Für die Änderung der Größe habe ich schon einen Befehl: da wird dem Originalnamen nur noch ein Zusatz angehängt, um das Original nicht zu überschreiben, geht ebenso gut, denke ich:
Gruß,
Adana
Oh, da habe ich mich wohl nicht klar genug ausgedrückt: ich wollte nicht die Größe ändern, sondern das Dateiformat. z. B. von pcx in jpg.
Für die Änderung der Größe habe ich schon einen Befehl: da wird dem Originalnamen nur noch ein Zusatz angehängt, um das Original nicht zu überschreiben, geht ebenso gut, denke ich:
Code: Alles auswählen
for i in *.JPG; do convert -resize 600x450 $i `basename $i .JPG`_s.JPG; done
bzw.
for i in *.JPG; do convert -resize 50% $i `basename $i .JPG`_s.JPG; done
Adana
Es gibt keine Probleme, es gibt nur Herausforderungen. Allerdings - es gibt da ja noch Windows...
Meine Drachenaufzucht: http://dragcave.net/user/Helatesu
Meine Drachenaufzucht: http://dragcave.net/user/Helatesu
Re: Befehl für convert?
Ups, stimmt. Du schreibst 'in anderes Format kopieren', das ist eigentlich deutlichAdana hat geschrieben:Oh, da habe ich mich wohl nicht klar genug ausgedrückt: ich wollte nicht die Größe ändern, sondern das Dateiformat. z. B. von pcx in jpg.
Für die Änderung der Größe habe ich schon einen Befehl: da wird dem Originalnamen nur noch ein Zusatz angehängt, um das Original nicht zu überschreiben, geht ebenso gut, denke ich:

Aber dann versteh ich dein Problem gleich gar nicht mehr. Du musst doch nur im Script dafür sorgen, dass aus dem Textstring file.pcx file.jpg wird, dann kümmert sich convert schon um alles! Komm, das hast du doch drauf

Grüße, Markus
Re: Befehl für convert?
Äh, leider nicht ganz. Damit convert alle Dateien in einem Rutsch konvertiert, habe ich Wildcards verwendet, also folgenden Befehl:
Das funzt soweit ja auch, nur hätte ich gerne, daß der originalname der Dateien erhalten bleibt, allenfalls ein Zusatz wi z. B _neu oder ähnliches.
In dem Befehl für die Größenänderung ist das so eingegeben. ich hab ja auch schon rumexperimentiert, aber irgendwie gelingt es mir nicht.
Auch bringt mich die Ausgabe von 'convert' nicht viel weiter.
Ich hatte gehofft, daß jemand hier sowas schon mal gemacht hat, und mir da weiterhelfen kann...
Gruß,
Adana
Code: Alles auswählen
convert *pcx *.jpg
In dem Befehl für die Größenänderung ist das so eingegeben. ich hab ja auch schon rumexperimentiert, aber irgendwie gelingt es mir nicht.
Auch bringt mich die Ausgabe von 'convert' nicht viel weiter.
Ich hatte gehofft, daß jemand hier sowas schon mal gemacht hat, und mir da weiterhelfen kann...
Gruß,
Adana
Es gibt keine Probleme, es gibt nur Herausforderungen. Allerdings - es gibt da ja noch Windows...
Meine Drachenaufzucht: http://dragcave.net/user/Helatesu
Meine Drachenaufzucht: http://dragcave.net/user/Helatesu
Re: Befehl für convert?
Also ich glaub immer noch nicht, dass das so direkt mit dem convertbefehl machbar ist, aber vielleicht hat ja noch wer ne Idee? Hier nochmal mein Script mit ner kleinen Anpassung. Aus file.pcx wird file.jpg und die Datei wird korrekt konvertiert.Adana hat geschrieben:Äh, leider nicht ganz. Damit convert alle Dateien in einem Rutsch konvertiert, habe ich Wildcards verwendet, also folgenden Befehl:Das funzt soweit ja auch, nur hätte ich gerne, daß der originalname der Dateien erhalten bleibt, allenfalls ein Zusatz wi z. B _neu oder ähnliches.Code: Alles auswählen
convert *pcx *.jpg
Code: Alles auswählen
newsize=$3
qualitaet=$4
newtype="jpg"
cd $1
for bild in *.pcx
do
neuname=$(basename $bild .jpg).png
convert "$bild" -resize $newsize\x$newsize -quality $qualitaet $neuname"
done
Re: Befehl für convert?
Hallo MarkusF!
Also, ich habe den Code mal bei mir als Script abgespeichert und ausführbar gemacht.
leider funktioniert es nicht, ich kann aber auch nicht feststellen, woran genau es liegt.
Jedenfalls wird mir das letzte Wort 'done' in Rot dargestellt (in Kwrite), obwohl es eigentlich schwarz dargestellt werden sollte.
Ganz links ist ja auch die, ja wie heißt das eigentlich, Pfad-darstellung? Die kleinen Minus-Zeichen, mit denen man Befehls-Sequenzen ausblenden kann.
Der läift bei mir ins leere, was mir sagt, daß da noch irgend etwas fehlt...
Gruß,
Adana
Also, ich habe den Code mal bei mir als Script abgespeichert und ausführbar gemacht.
leider funktioniert es nicht, ich kann aber auch nicht feststellen, woran genau es liegt.
Jedenfalls wird mir das letzte Wort 'done' in Rot dargestellt (in Kwrite), obwohl es eigentlich schwarz dargestellt werden sollte.
Ganz links ist ja auch die, ja wie heißt das eigentlich, Pfad-darstellung? Die kleinen Minus-Zeichen, mit denen man Befehls-Sequenzen ausblenden kann.
Der läift bei mir ins leere, was mir sagt, daß da noch irgend etwas fehlt...
Gruß,
Adana
Es gibt keine Probleme, es gibt nur Herausforderungen. Allerdings - es gibt da ja noch Windows...
Meine Drachenaufzucht: http://dragcave.net/user/Helatesu
Meine Drachenaufzucht: http://dragcave.net/user/Helatesu
Re: Befehl für convert?
Da fehlt ein " vor $newname
Aber wieso nimmst nicht einfach die von die geposteten Script und passt diese an? Ist ja im Prinzip das gleiche....
Aber wieso nimmst nicht einfach die von die geposteten Script und passt diese an? Ist ja im Prinzip das gleiche....

MfG GoKi
:wq
:wq
Re: Befehl für convert?
Hi GoKi!
Herzlichen Dank, genau das war der Fehler.
Aber was genau meinst Du jetzt mit anpassen, was soll ich anpassen? Sorry, ich steh gerade im Wald, was wohl auch darn liegt, daß ich in Linux und auf der Konsole noch nicht ganz so fit bin.
Aber auch mit dem Script komme ich nicht weiter, wenn ich es starte, bekomme ich folgende Fehlermeldung:
Habe ich den falschen Befehl genommen? Oder ist da im Script noch etwas, das angepasst werden muß?
Könnte es mit dem Befehl zu tun haben? CD steht doch eigentlich für 'change direktory' Ich habe das Script aber in dem gleichen Verzeichnis liegen, in dem sich auch die zu konvertierenden Bilder befinden...
Gruß,
Adana
Herzlichen Dank, genau das war der Fehler.
Aber was genau meinst Du jetzt mit anpassen, was soll ich anpassen? Sorry, ich steh gerade im Wald, was wohl auch darn liegt, daß ich in Linux und auf der Konsole noch nicht ganz so fit bin.
Aber auch mit dem Script komme ich nicht weiter, wenn ich es starte, bekomme ich folgende Fehlermeldung:
Code: Alles auswählen
./konvertierung.sh
bash: ./konvertierung.sh: /bin/sh^M: bad interpreter: Datei oder Verzeichnis nicht gefunden
Könnte es mit dem Befehl
Code: Alles auswählen
cd $1
Gruß,
Adana
Es gibt keine Probleme, es gibt nur Herausforderungen. Allerdings - es gibt da ja noch Windows...
Meine Drachenaufzucht: http://dragcave.net/user/Helatesu
Meine Drachenaufzucht: http://dragcave.net/user/Helatesu
Re: Befehl für convert?
Hallo Adana,Adana hat geschrieben: Habe ich den falschen Befehl genommen? Oder ist da im Script noch etwas, das angepasst werden muß?
Könnte es mit dem Befehlzu tun haben? CD steht doch eigentlich für 'change direktory' Ich habe das Script aber in dem gleichen Verzeichnis liegen, in dem sich auch die zu konvertierenden Bilder befinden...Code: Alles auswählen
cd $1
tschuldigung, es ist halt Sonntag abend, da ist meine Konzentration nicht gerade auf Maximum.
cd $1 steht für 'wechsle in das Verzeichnis, das als erster Paramter dem Script mitgegeben wird. Wenn das Script im gleichen Ordner liegt, dann lösche den Befehl einfach weg oder kommentiere ihn aus # cd $1. Wenn's gar nicht klappt dann melde dich nochmal, dann kriegste morgen nen komplettes Script.
Gut's Nächtle
Markus
Re: Befehl für convert?
Hi Markus!
Nur keine Entschuldigungen, solche 'routinefehler' passieren doch selbst den Besten!
Aber leider funktioniert es immer noch nicht:
Erst mal 'ne nacht drüber schlafen, dann erscheint vieles gleich viel klarer *lach*
Dir auch eine Gute nacht und vielen dank für Deine Bemühungen!
Gruß,
Adana
Nur keine Entschuldigungen, solche 'routinefehler' passieren doch selbst den Besten!

Aber leider funktioniert es immer noch nicht:
Code: Alles auswählen
$ ./konvertierung.sh
bash: ./konvertierung.sh: /bin/sh^M: bad interpreter: Datei oder Verzeichnis nicht gefunden
Dir auch eine Gute nacht und vielen dank für Deine Bemühungen!
Gruß,
Adana
Es gibt keine Probleme, es gibt nur Herausforderungen. Allerdings - es gibt da ja noch Windows...
Meine Drachenaufzucht: http://dragcave.net/user/Helatesu
Meine Drachenaufzucht: http://dragcave.net/user/Helatesu
Re: Befehl für convert?
Frage, mit welchem Programm hast du das Skript/die Datrei konvertierung.sh erstellt?Adana hat geschrieben:Hi Markus!
Nur keine Entschuldigungen, solche 'routinefehler' passieren doch selbst den Besten!
Aber leider funktioniert es immer noch nicht:Erst mal 'ne nacht drüber schlafen, dann erscheint vieles gleich viel klarer *lach*Code: Alles auswählen
$ ./konvertierung.sh bash: ./konvertierung.sh: /bin/sh^M: bad interpreter: Datei oder Verzeichnis nicht gefunden
Dir auch eine Gute nacht und vielen dank für Deine Bemühungen!
Gruß,
Adana
Probier mal ein dos2unix drueber laufen zu lassen:
dos2unix konvertierung.sh
mfg
Debian GNU/Linux 00101010
Re: Befehl für convert?
Hallo Leute!
Also, das Script habe ich mit kwrite erstellt, so wie alle meine Scripte.
Aber manchmal liegt die Lösung direkt vor einem und man sieht sie nicht! Ich habe einfach folgenden Befehl
genommen und etwas geändert:
Ich habe einfach den Befehl zum verkleinern von Bild-Dateien genommen, um das Format zu ändern. Und um die Originalgröße zu erhalten, habe ich einfach 100% genommen...
Ich danke Euch für Eure Hilfe und hoffe, daß meine Lösung auch anderen helfen kann...
Ein Frohes Fest und ein glückliches, neues Jahr!
gruß,
Adana
Also, das Script habe ich mit kwrite erstellt, so wie alle meine Scripte.
Aber manchmal liegt die Lösung direkt vor einem und man sieht sie nicht! Ich habe einfach folgenden Befehl
Code: Alles auswählen
for i in *.JPG; do convert -resize 50% $i `basename $i .JPG`_s.JPG; done
Code: Alles auswählen
for i in *.pcx; do convert -resize 100% $i `basename $i .pcx`.JPG; done
Ich danke Euch für Eure Hilfe und hoffe, daß meine Lösung auch anderen helfen kann...
Ein Frohes Fest und ein glückliches, neues Jahr!
gruß,
Adana
Es gibt keine Probleme, es gibt nur Herausforderungen. Allerdings - es gibt da ja noch Windows...
Meine Drachenaufzucht: http://dragcave.net/user/Helatesu
Meine Drachenaufzucht: http://dragcave.net/user/Helatesu