Installieren des Imagemagike
Wir werden den Imagemagick für diesen Prozess brauchen. Lassen Sie es zunächst mit der folgenden Syntax installieren:
sudo apt-Get Installieren Sie Imagemagick
Mogrifiziert
Angenommen, wir haben 1000 Fotos, die alle die “haben“.PNG ”Erweiterung. Nehmen wir weiter an, dass wir sie alle in eine "verwandeln wollen".JPG ”Datei.
Jetzt, da wir angenommen haben, können wir den Code schreiben.
mogrify -Format JPG *.png
Hier sagen wir dem Imagemagick, dass es viele gibt “.PNG ”-Bilder, die jeweils mit einem“ verwenden “.PNG ”Erweiterung. Wir erzählen dann den ImageMagick mit dem Formatschalter, um das Bild in ein JPG -Bild zu verwandeln. Hier verhindert der Formatschalter, dass die Bilder überschrieben werden. Typischerweise besteht die Unterscheidung zwischen Mogrify und Konvertit darin. Dies ist jedoch nicht der Fall, wenn wir den Formatschalter verwenden (eine Ausnahme von der Regel).
Der Große an diesem kleinen Code ist, dass er so viele Bilder konvertieren wird, wie Sie möchten. Und es ist ein Einzeiler! In diesem Fall speichern wir jedoch alle neuen Dateien in demselben Ordner wie die alten Dateien.
Nehmen wir nun an, dass ich sie ganz in einem ganz anderen Verzeichnis retten möchte. Wir haben ein paar *.JPG und wir sparen sie in einem neuen Ordner namens NewFolder. Nehmen wir weiter an, dass sich die Originaldateien im Ordner Download befinden.
(Die Idee hier ist, dass sich alle Originaldateien im Ordner Downloads befinden, und wir erstellen einen Ordner namens NewFolder, um die transformierten Bilder abzugeben.)
CD -Downloads
MKDIR NEUFOLDER
mogrify -format png -qualität 100 -path ~/downloads/newfolger *.JPG
Also, was passiert hier?? Wir wenden den Befehl mogrifik an und fügen einen neuen Schalter namens Path hinzu. Der Pfadschalter stellt sicher, dass die neuen Bilder in den angegebenen Ordner (NewFolder) abgeladen wurden.
Nehmen wir nun an, dass wir eine Kombination von JPG -Bildern und PNG -Bildern haben und sie in JPEG umwandeln möchten.
mogrify -Format JPEG *
In diesem Fall setzen wir nur einen Stern ein, anstatt anzugeben, welche Bilder wir konvertieren möchten. Der Stern bedeutet, alles zu konvertieren.
Wenn dort Ordner vorhanden sind, stürzt es eine Art Absturz. Verwenden Sie also auch den Pfadschalter.
Konvertieren
Schreiben wir nun etwas anderes mit dem Befehl convert anstelle des mogrifybefehls (der Befehl mogrify überschreibt die Originaldateien überschreiben).
Konvertieren *.PNG -Resize 1234x1234 gegründet -%d.png
Was haben Sie hier bemerkt? Wir haben die Batch -Konvertierung mit dem Befehl convert durchgeführt. Um die Datei umzubenennen, verwenden wir den Begriff „Änderung-%d.PNG ”. Was ist das "%d" -Anzeichen im Namen? Der Rest des Namens macht Sinn, richtig? Und das „%d“ bedeutet, sie mit 0, 1, 2 usw. zu zahlen.
Ein weiteres schnelles Beispiel:
Konvertieren *.PNG -Resize 1234x1234 gewertet -%03d.png
Was bedeutet der „%03D“? Schauen Sie sich die Ausgabe an. Diesmal wird es mit 3 Ziffern umgebracht. Jetzt, anstatt die Änderung der Größe zu sehen, 0.PNG, wir sehen die Größe der Größenänderung-000.png.
Schleifen
Sie können auch die Schleifen schreiben.
für f in *.JPG; Konvertieren Sie "$ f" -qualität 85 "$ f".PNG; Erledigt
In diesem Fall verwenden wir immer noch einen Einzeiler, aber es ist etwas komplexer. In diesem Fall sagen wir, dass wir für jedes Bild namens F das Bild konvertieren und es in „$ f benennen.PNG ”. Wie Sie vielleicht bemerkt haben, wenn das Bild „Image1 nennt.JPG ”, es benennt es in„ Image1.JPG.PNG ”. Dieser Befehl ist ein wenig fehlerhaft. Schauen wir uns also die anderen Möglichkeiten an, um das Bild umzubenennen.
Zuvor haben wir den Befehl mogrify verwendet. Es überschrieben die Bilder wegen des Formatschalters nicht. Wäre der Formatschalter jedoch nicht vorhanden gewesen, hätte er beispielsweise die Datei überschrieben, wenn sie die Größenänderung überschrieben hätte. Was ist also, wenn wir den Befehl convert verwenden möchten??
für Datei in *.PNG; Konvertieren Sie $ file -Resize 1275X12222 -Datei mit der Größe des $ $; Erledigt
Versuchen wir, diesen Befehl zu verstehen.
Der erste Teil des Befehls ist wie folgt:
für Datei in *.PNG;
Der *.PNG bezieht sich auf alle PNG -Dateien. Dies bedeutet "Für eine einzelne Datei im Stapel von Dateien" ist "für eine einzelne Datei".
Der Kernbefehl lautet wie folgt:
Konvertieren Sie $ file -Resize 1275x1222 hochgewertet -$ Datei -
Dieser Teil nimmt einfach die $ file (eine Datei) ein und ändert sie mithilfe des Größenschalters und dann eine Datei namens mit der $ -Datei mit der Größe des Ableitungen aus.
Wir enden dann mit fertig. Dieser Teil ist offensichtlich genug.
Einfach genug, richtig?
Abschluss
Die Batch -Konvertierung ist ein sehr nützlicher Prozess. Es hindert uns daran. In Imagemagick ist der einfachste Weg, um eine Million Bilder zu verwandeln, indem der Befehl mogrifik verwendet wird. Wenn es jedoch nicht in Verbindung mit dem Formatschalter verwendet wird, schreibt es über das Originalbild. Wenn Sie beispielsweise den Befehl mogrify verwenden, um eine Reihe von Bildern umzuwandeln, um sie zu ändern, überschreiben Sie die Originalbilder. Manchmal ist dies möglicherweise nicht das, was Sie wollen, und in solchen Fällen können Sie auf ein kleines Skript zurückgreifen. Das Skript selbst ist ein One -Liner und Sie können den Befehl konvertieren, wenn Sie möchten. Das ist also der gute Teil. Aber es ist etwas komplexer als die einfachsten der Stapelkonvertierungen, die mit dem Befehl mogrifik durchgeführt wurden. In jedem Fall ist der Punkt, dass Sie kein Bild mehr gleichzeitig verwandeln müssen. Sie können die Batch -Conversions fortsetzen, die gleich Tausende und Abertausende von Bildern umwandeln können.