Comment faire pour convertir tous les fichiers (dans différents formats) dans le dossier de différents type de fichier
J'ai un dossier avec beaucoup d'images à partir de différents types (png, jpg, jpeg, bmp, pdf), et je voudrais les convertir en png (par exemple) à l'aide de imagemagick.
Est-il une seule commande, qui peuvent effectuer ce? Si non, que dois-je faire à la place?
Grâce.
- ou si vous utilisez python oeil à ceci: stackoverflow.com/questions/2900035/...
- le poste est lié n'est pas utile. Il donne des détails sur la façon de renommer un fichier, pas comment reformater entièrement.
- oeww méchant, à l'époque je ne savais pas vraiment des choses... . Je vais laisser ma commande de stand, de sorte que d'autres personnes vont apprendre de l'erreur.
Vous devez vous connecter pour publier un commentaire.
Essayer le
mogrify
commande:Mais soyez prudent. Sans le
-format
option,mogrify
remplace les images d'origine. Assurez-vous de lire les la documentation.C:\Program Files (x86)\ImageMagick-6.8. 3-Q16\modules\coders\IM_MOD_RL_INI_.dll': No such file or directory @ warning/mo dule.c/GetMagickModulePath/683. mogrify.exe: no decode delegate for this image format
bureau.ini' @ error/cons démunis.c/ReadImage/550. (Est-ce simple à résoudre?)mogrify
essaie de convertir le fichierdesktop.ini
ce qui n'est pas un fichier image. Vous ne devriez passer des fichiers d'image àmogrify
. Supprimerdesktop.ini
ou modifier*.*
à un joker qui ne corresponde à l'image des fichiers dans votre répertoire. Vous pouvez également exécuter la commande plusieurs fois pour chaque format de fichier:mogrify -format png *.jpg
,mogrify -format png *.bmp
, etc.*.pdf
fichier. Comment adapter votre code pour faire ce travail?pdftk
(par exemple en utilisantpdftk *.pdf cat output combined.pdf
), mais serait plutôt un one-liner pour que tout le travail soit fait...mogrify
est utilisé avec le-format
option, le fichier n'est pas remplacé, mais un nouveau est enregistré avec le nouveau préfixe.-format
option à l'aide du format de fichier original sera toujours remplacer l'original. Vous ne savez pas si il y a de toute façon d'éviter cela.Bien que
mogrify
semble faire le travail, je voudrais vous montrer comment cela peut être fait avec plusieurs commandes avecconvert
de ImageMagick.Je pense que plusieurs commandes sont mieux, parce que le nombre de types de fichier est censé être assez petite et il peut mieux l'adapter à vos besoins:
Cette commande:
vous permet de convertir tous
.xbm
fichiers.png
tout en ne touchant pas le xbm fichiers.Ensuite, vous pouvez déplacer tous les "convertis" des fichiers:
for file in *.xbm; do convert "$file" "`basename \"$file\" .xbm`.png"; done
mais j'ai le sentiment que bash propose une solution plus propre pour cela.Vous pouvez utiliser
convert
commande de paquet ImageMagick, par exemplefind . -maxdepth 1 \( -iname \*.png -o -iname \*.jpg -o -iname \*.jpeg -o -iname \*.bmp -o -iname \*.pdf \) -exec convert -verbose "{}" "DEST_DIR/{}.png" \;
Ou si vous avez tous les fichiers dans le même répertoire, essayez la suivante est plus simple:
Similaires: Comment puis-je l'échelle de toutes les images dans un dossier à la même largeur?