Je suppose que c'est assez facile à faire, mais je n'ai aucune expérience avec les utilitaires de ligne de commande de Windows. Fondamentalement, je dois parcourir tous les fichiers d'un répertoire (idéal s'il peut faire des sous-répertoires, mais je peux l'exécuter sur chacun des 5 répertoires si nécessaire), obtenir le nom en tant que variable et le faire exécuter
"C:\Program Files\ImageMagick-6.7.6-Q16\convert.exe" -compress LZW
-colorspace Gray -colors 32 file_var file_var
J'ai vu les fichiers nommés dynamiquement dans une invite de commande pour la boucle . Serais-je capable de l'utiliser (en échangeant le SET ... avec la commande ci-dessus)? L'espace sur l'ordinateur en question est au-delà des limites donc je ne peux pas effectuer de sauvegarde avant de l'exécuter à ce stade (mauvais, je sais).
windows
command-line
imagemagick
Robert
la source
la source
"%%f" "%%f"
) placera simplement le nom de fichier (avec un chemin complet) deux fois. Vous voudrez probablement utiliser quelque chose comme"%%f" "%%~dpnf.gif"
pour changer l'extension du fichier de sortie.Réponses:
Bizarre, il y avait une réponse qui avait la partie récursive.
Eh bien, selon comment parcourir les fichiers avec des caractères génériques dans le fichier de commandes , j'ai pu y parvenir. Voici comment cela a été réalisé:
la source
Ouvrez PowerShell
Get-ChildItem récupère une liste de fichiers en tant qu'objets du sous-répertoire actuel. "-recurse" inclura des sous-répertoires. Cela le place dans un tableau $ Files.
La boucle foreach parcourt chaque fichier et appelle le bloc-notes avec l'argument de ligne de commande du chemin d'accès complet au nom de fichier de chaque fichier.
ATTENTION: testez le code ci-dessus dans un répertoire contenant quelques petits fichiers texte, car il ouvrira une instance du Bloc-notes pour chaque fichier.
Cela devrait vous donner une idée de la façon dont vous allez faire ce que vous cherchez à faire.
la source