Question
Problème de redirection avec EXIFTool
- Michel380
- Auteur du sujet
- Hors Ligne
- Nouveau membre
Réduire
Plus d'informations
- Messages : 2
- Remerciements reçus 0
il y a 1 mois 1 semaine - il y a 1 mois 1 semaine #34619
par Michel380
Problème de redirection avec EXIFTool a été créé par Michel380
Bonjour,
J'utilise un script qui contient cette ligne
& $ExifToolName -m -F -q -q -r -ext jpg -p $ExifToolArgs "$FolderPath" >>$TempFile
(windows 10, version powershell= je ne sais pas)
Ca fonctionne très bien, exiftool récupère les données dans le dossiers de photos $FolderPath et les renvoie dans $TempFile.
Les options -q -q font qu'exiftool n'émet aucun message de compte rendu.
Je voudrais bien enlever ces options pour lire les compte rendus sur la console, ou les renvoyer dans un fichier log.
Malgré tous mes essais, ces compte rendus sont captés par le shell qui tente de les "exécuter" et fait des erreurs.
Ou bien, ils sont mêlés à la sortie standard et renvoyés dans le fichier $TempFile qui n'est pas là pour ça.
Voici mes essais infructueux : (je renonce à utiliser les balises code, ca fait 15 fois que je refais ce message.)
& $ExifToolName -m -F -r -ext jpg -p $ExifToolArgs "$FolderPath" 1>> $TempFile 2>$Host | ForEach-Object {Write-Host $_ -ForegroundColor Yellow }
& $ExifToolName -m -F -r -ext jpg -p $ExifToolArgs "$FolderPath" 1>> $TempFile | Out-Host
powershell interprète les compte rendus d'exiftool comme des messages d'erreur . Avec $ErrorActionPreference = "SilentlyContinue" , aucun message exiftool n'apparait ...
J'utilise un script qui contient cette ligne
& $ExifToolName -m -F -q -q -r -ext jpg -p $ExifToolArgs "$FolderPath" >>$TempFile
(windows 10, version powershell= je ne sais pas)
Ca fonctionne très bien, exiftool récupère les données dans le dossiers de photos $FolderPath et les renvoie dans $TempFile.
Les options -q -q font qu'exiftool n'émet aucun message de compte rendu.
Je voudrais bien enlever ces options pour lire les compte rendus sur la console, ou les renvoyer dans un fichier log.
Malgré tous mes essais, ces compte rendus sont captés par le shell qui tente de les "exécuter" et fait des erreurs.
Ou bien, ils sont mêlés à la sortie standard et renvoyés dans le fichier $TempFile qui n'est pas là pour ça.
Voici mes essais infructueux : (je renonce à utiliser les balises code, ca fait 15 fois que je refais ce message.)
& $ExifToolName -m -F -r -ext jpg -p $ExifToolArgs "$FolderPath" 1>> $TempFile 2>$Host | ForEach-Object {Write-Host $_ -ForegroundColor Yellow }
& $ExifToolName -m -F -r -ext jpg -p $ExifToolArgs "$FolderPath" 1>> $TempFile | Out-Host
& $ExifToolName -m -F -r -ext jpg -p $ExifToolArgs "$FolderPath" 1>> $TempFile 2>&1 | ForEach-Object { [Console]::WriteLine($_) }
& $ExifToolName -m -F -r -ext jpg -p $ExifToolArgs "$FolderPath" 1>> $TempFile | ForEach-Object { Write-Host "`"$_`"" }
& $ExifToolName -m -F -r -ext jpg -p $ExifToolArgs "$FolderPath" 1>> $TempFile 2>> $BaseFolder\out2.txt
powershell interprète les compte rendus d'exiftool comme des messages d'erreur . Avec $ErrorActionPreference = "SilentlyContinue" , aucun message exiftool n'apparait ...
Dernière édition: il y a 1 mois 1 semaine par Arnaud Petitjean. Raison: balises codes ingérables
Connexion ou Créer un compte pour participer à la conversation.
- Francois Dunoyer
- Hors Ligne
- Nouveau membre
Réduire
Plus d'informations
- Messages : 13
- Remerciements reçus 1
il y a 1 mois 31 minutes #34624
par Francois Dunoyer
Réponse de Francois Dunoyer sur le sujet Problème de redirection avec EXIFTool
ce serait dans le style plus simple
# version sans erreur
dir d:\ 1>> d:\res.txt 2>d:\erreur.log
# version qui alimente le fichier d'erreur
dir e:\existepas 1>> d:\res.txt 2>d:\erreur.log
apres le probleme est plus dans les resulat de l'exiftools que dans le powershell
qu'essayes tu de faire avec cette commande ?
Pour rappel
">" créé le fichier a chaque exécution
">>" ajoute a la fin du fichier existant
# version sans erreur
dir d:\ 1>> d:\res.txt 2>d:\erreur.log
# version qui alimente le fichier d'erreur
dir e:\existepas 1>> d:\res.txt 2>d:\erreur.log
apres le probleme est plus dans les resulat de l'exiftools que dans le powershell
qu'essayes tu de faire avec cette commande ?
Pour rappel
">" créé le fichier a chaque exécution
">>" ajoute a la fin du fichier existant
Connexion ou Créer un compte pour participer à la conversation.
- Michel380
- Auteur du sujet
- Hors Ligne
- Nouveau membre
Réduire
Plus d'informations
- Messages : 2
- Remerciements reçus 0
il y a 4 semaines 2 jours - il y a 4 semaines 2 jours #34627
par Michel380
Réponse de Michel380 sur le sujet Problème de redirection avec EXIFTool
Merci pour cette réponse précise.
J'avais fait diverses erreurs, au cours de mes multiples essais. (Je n'ai pratiquement aucune compétence en shell) .
Il semble important de respecter les espaces dans
dir d:\ 1>> d:\res.txt 2>> null
Ca fonctionne très bien avec null, j'utilise ensuite ces deux lignes
Write-host -NoNewLine "$error "
$error.clear()
Ca répond bien a mes attentes.
pour info :
Avec powershell, j'ai des boucles qui parcourent mes dossiers de photos
Exiftool extrait des métadonnées IPTC et XMP des photos, données qui vont dans le fichier $TempFile
Je mets en forme ces données avec un traitement powershell.
Quand exiftool a fini un traitement d'un dossier, il envoie un compte-rendu du type. "25 images read , 2 directories scanned" vers la console. Je surveille de cette façon le cours du traitement, et parfois d'autres messages sont informatifs.("incorrect header dscn0001.jpg" ou autres ...)
Il semble que ce compte rendu soit détecté comme un message d'erreur par le shell
Le but final est de générer des fichiers "descript.ion" qui seront exploités par XnViewMP.
Je documenterai ça un jour dans mon site ... orchisere.fr/logiciels/thumb.html
J'ai fait des essais avec un fichier log à la place de null, mais je dois être maladroit, j'ai eu des erreurs dedans, je vous dirai si j'y retravaille...
Edit : dans le fichier log, qu"il soit entre guillemets ou non, je trouve des erreurs qui montrent que powershell a mal réagi au messages d'exiftool..
Du coup j'ai mis :
Write-Host -NoNewline "$error "
Add-Content -Path $BaseFolder\$LogFile -Value "$error"
$Error.Clear()
Ca me suffit
Encore merci.
J'avais fait diverses erreurs, au cours de mes multiples essais. (Je n'ai pratiquement aucune compétence en shell) .
Il semble important de respecter les espaces dans
dir d:\ 1>> d:\res.txt 2>> null
Ca fonctionne très bien avec null, j'utilise ensuite ces deux lignes
Write-host -NoNewLine "$error "
$error.clear()
Ca répond bien a mes attentes.
pour info :
Avec powershell, j'ai des boucles qui parcourent mes dossiers de photos
Exiftool extrait des métadonnées IPTC et XMP des photos, données qui vont dans le fichier $TempFile
Je mets en forme ces données avec un traitement powershell.
Quand exiftool a fini un traitement d'un dossier, il envoie un compte-rendu du type. "25 images read , 2 directories scanned" vers la console. Je surveille de cette façon le cours du traitement, et parfois d'autres messages sont informatifs.("incorrect header dscn0001.jpg" ou autres ...)
Il semble que ce compte rendu soit détecté comme un message d'erreur par le shell
Le but final est de générer des fichiers "descript.ion" qui seront exploités par XnViewMP.
Je documenterai ça un jour dans mon site ... orchisere.fr/logiciels/thumb.html
J'ai fait des essais avec un fichier log à la place de null, mais je dois être maladroit, j'ai eu des erreurs dedans, je vous dirai si j'y retravaille...
Edit : dans le fichier log, qu"il soit entre guillemets ou non, je trouve des erreurs qui montrent que powershell a mal réagi au messages d'exiftool..
Du coup j'ai mis :
Write-Host -NoNewline "$error "
Add-Content -Path $BaseFolder\$LogFile -Value "$error"
$Error.Clear()
Ca me suffit
Encore merci.
Dernière édition: il y a 4 semaines 2 jours par Michel380. Raison: complément
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.108 secondes
- Vous êtes ici :
- Accueil
- forum
- PowerShell
- Entraide pour les débutants
- Problème de redirection avec EXIFTool