un informaticien distingué

Démarré par vernhet, Mai 23, 2024, 11:57:00

« précédent - suivant »

vernhet

un informaticien distingué qui, moyennant finances, serait en mesure de me concevoir un outil pour Mac capable sur mes disques durs (qui comportent des photos jpg brutes de carte ET des photos jpg postraitées, de me faire apparaître toutes les photos postraitées. Je pense, vu mon classement et mes routines que le critère simple efficace, est la longueur des noms des fichiers: en effet toutes mes photos numériques brutes ont des noms comportant 8 caractères avant le point et l'extension (exemple:_1Z95608.JPG) tandis que toutes mes photos postraitées présentent un nom forcément plus long puisque , après postraitement, j'ajoute le nom de l'artiste en l'intercalant entre le numéro d'origine et le point + extension (exemple _1Z98922 CUJIOUS YVAN & WINSBERG LOUIS NOUGARO.JPG) Je précise que tous ces fichiers photos peuvent se trouver à différents niveaux dans l'arborescence  du disque dur.

Nikojorj

https://support.apple.com/fr-fr/guide/mac-help/mh15155/mac ne te suffit pas? Si tu fais rechercher " " (un espace) dans le nom.

egtegt²

Je vais faire une réponse d'informaticien, donc feignant par nature :) Je te conseille de travailler avec les arborescences en séparant l'arborescence des fichiers bruts et l'arborescence des fichiers traités.

Perso j'ai une arborescence du genre :
/Fichiers bruts/année/date - événement  qui contient les raws ou les jpegs sortis de l'appareil
/Fichiers traités/année/date - événement qui contient les jpegs sélectionnés et traités

En majorité une fois le traitement terminé, je n'utilise plus que l'arborescence /fichiers traités, parfois si je veux retraiter une image ou chercher un RAW non traité  je sais qu'il est au même endroit dans l'arborescence /Fichiers bruts

En général je renomme les fichiers à l'importation avec la date/heure et le nom de l'événement, je ne suis pas revenu en arrière sur les vieux fichiers donc j'ai aussi des fichiers du genre DSCXXXX.nef ou DSCXXX.jpg

Par contre ça va te demander de déplacer tes fichiers post-traités, ça prend du temps mais si tes noms sont différents, c'est assez facile à faire avec les recherches.

Ca m'a pris quelques mois a 1 ou 2 heures par jour pour reprendre toutes mes photos, avant j'avais tout un peu en bordel avec des noms de dossier peu parlant et aucune sélection, le plus long a été de sélectionner les photos intéressantes, pour toi c'est déjà fait, il suffit juste de les déplacer

M@kro

Il n'existe pas des catalogueurs sous Mac qui peuvent avoir ce genre de fonctionnalités de tri par nom de fichiers ?


egtegt²

Citation de: M [at] kro le Mai 24, 2024, 01:01:50Il n'existe pas des catalogueurs sous Mac qui peuvent avoir ce genre de fonctionnalités de tri par nom de fichiers ?
Le problème n'est pas si simple, si j'ai bien compris son original peut s'appeler _1Z95608.JPG et le fichier traité _1Z98922 CUJIOUS YVAN & WINSBERG LOUIS NOUGARO.JPG.

Humainement c'est facile de faire la différence mais en termes de programmation c'est un peu chiant mais surtout c'est très spécifique. Les catalogueurs sont plutôt prévus pour par exemple n'afficher que les jpg et pas les NEF. C'est pour ça que je lui suggère de mettre les originaux et les fichiers traités dans des répertoires différents.

M@kro

Citation de: egtegt² le Mai 24, 2024, 08:50:39C'est pour ça que je lui suggère de mettre les originaux et les fichiers traités dans des répertoires différents.

Je suppose que c'est cette manipulation qu'il souhaite faire en mode "automatique" et non manuellement.
Pour les catalogueurs, vernhet ne parlant que de fichiers jpg, je suppose que le NEF ne l'intéresse pas (dans l'immédiat).

Juste pour précision dans l'exemple donné : est ce que les 2 fichiers (brut/traités) commencent par le même nom ?
car tu indiques _1Z95608.JPG et _1Z98922 CUJIOUS YVAN & WINSBERG LOUIS NOUGARO.JPG.
Ca peut tout changer si tu mets ou pas le même nom.


Gér@rd

#6
Je ne prétends pas donner une solution (cela doit faire au moins deux décennies que je n'ai pas touché à un Mac) mais si j'avais à faire ça sous Linux, je ferais un shellscript de trois ou quatre lignes :

1) se mettre en mode commande (ouvrir une fenêtre terminal),
2) aller dans le répertoire qui contient les fichiers,
3) taper la commande : "ls | grep -E -v ^.{8}.JPG" ou/et "ls | grep -E -v ^.{8}.jpg"

En résultat on aura la liste des noms de fichiers qui se terminent en .JPG (ou .jpg) et qui ne font pas juste huit caractères. On peut rediriger cette liste dans un fichier pour le traiter plus tard.

Faut évidemment éviter que des noms de fichiers traités fassent huit caractères (le programme ne pourrait pas faire la différence).

Si un connaisseur du Mac peut se pencher là dessus je suppose qu'on doit pouvoir adapter ça (vu que l'OS du Mac est bâti sur Unix ils ont bien dû prévoir un mode commande ?).

Col Hanzaplast

Si j'ai bien compris les noms des photos modifiées comprennent tous au moins un espace. On doit pouvoir trier la dessus.
"Le principal n'est pas que la machine fonctionne, c'est que le client croit qu'elle fonctionne."

bg1000

En dos...

dir /b/s>monfichier.txt

M@kro

#9
Citation de: Gér [at] rd le Mai 24, 2024, 17:34:37Je ne prétends pas donner une solution (cela doit faire au moins deux décennies que je n'ai pas touché à un Mac)
 mais si j'avais à faire ça sous Linux, je ferais un shellscript de trois ou quatre lignes :
1) se mettre en mode commande (ouvrir une fenêtre terminal),
2) aller dans le répertoire qui contient les fichiers,
3) taper la commande : "ls | grep -E -v ^.{8}.JPG" ou/et "ls | grep -E -v ^.{8}.jpg"

Citation de: Col Hanzaplast le Mai 24, 2024, 21:43:15Si j'ai bien compris les noms des photos modifiées comprennent tous au moins un espace. On doit pouvoir trier la dessus.

Oui, je n'ai pas cherché la syntaxe exacte mais c'est ce que à quoi je pensais aussi (différencier les fichiers en 8.3 et les autres en *x*.3)
Les fichiers en 8.3 (_1Z123456.jpg) sont les fichiers bruts générés par le boitier Nikon, les autres (_1Z123456 xxxxuuuuuxuxxuxuxuxyyxx.jpg) sont ceux qui sont renommés par Francis.
Et même si Linux et les Unix like (donc Mac) ont des points communs, c'est difficile de savoir si ça fonctionne à 100% sans pouvoir le tester.


M@kro

Dans une certaine logique, on pourrait créer un script avec la méthodologie suivante :

- créer un répertoire nommé "jpg_brut"
On fait une commande move (déplacement) des fichiers _1Z12345.jpg  (8.3) vers le répertoire "jpg_brut".

- créer un autre répertoire "jpg_traités"
On fait une commande move de ces fichiers restants vers le 2ème répertoire jpg_traités.

Reste plus qu'à trouver la syntaxe d'une commande qui peut faire ça ^^
Ca pourrait aussi ramener d'autres fichiers que ceux voulus, donc reste à trouver le truc pour n'avoir que les fichiers _1Z*.jpg avec pas plus que 8.3.


Gér@rd

J'ai emprunté un vieux Mac à mon fils (il ne s'en servait plus) et j'ai pu faire quelques tests. Le mode commande du Mac est conforme à ce qu'ils appellent "le zsh shell" qui est en fait un classique shell Bourne simplement enrichi de quelques fonctionnalités propres à Apple.

J'ai refait les mêmes tests (avec les mêmes fichiers) que j'avais fait sous Linux (sous Mint) et je confirme que ça marche strictement pareil (mêmes syntaxes, mêmes données ---> mêmes résultats).


Verso92

J'ai une commande qui supprime tous les problèmes : "format c:" (ou "del *.*", ça marche aussi).

vernhet

merci à tous. Je suis vos échanges avec intérêt, mais je suis largué complet, car je manque de toute compétence en programmation...si c'est de la programmation?
 Juste, je voudrais redire que le seul critère de tri pertinent à 100% me semble être la longueur du nom des fichiers (concernant l'existence d'un espace comme critère évoquée par Col Hanzaplast, ça risque de me laisser échapper qqs fichiers pour lesquels au moment du "renommage" ,j'ai oublié de créer un espace entre le numéro d'origine et le nom ajouté.Je sais qu'il y en a un certain nombre dans ce cas)

SeSy

Citation de: vernhet le Mai 26, 2024, 11:03:00merci à tous. Je suis vos échanges avec intérêt, mais je suis largué complet, car je manque de toute compétence en programmation...si c'est de la programmation?
 Juste, je voudrais redire que le seul critère de tri pertinent à 100% me semble être la longueur du nom des fichiers (concernant l'existence d'un espace comme critère évoquée par Col Hanzaplast, ça risque de me laisser échapper qqs fichiers pour lesquels au moment du "renommage" ,j'ai oublié de créer un espace entre le numéro d'origine et le nom ajouté.Je sais qu'il y en a un certain nombre dans ce cas)

L'objectif est où ? Juste d'afficher les chemins ? Les déplacer ?
Sur fond noir...

ChatOuille

Oui, on ne comprend pas très bien...
Je ne connais pas le Mac, mais pour moi, il faut toujours une bonne structure au niveau système. Donc pas de sélection au niveau système, juste chaque chose à sa place. Par la suite, on a des bases de données dont l'utilité est justement de faire des sélections. Pour cela, on dispose d'un tas d'outils comme nom du fichier, date, chemin, étiquette, localisation, mots clé...

vernhet

Citation de: SeSy le Mai 28, 2024, 13:48:11L'objectif est où ? Juste d'afficher les chemins ? Les déplacer ?
ce serait de les afficher en liste, pour ensuite les sélectionner toutes pour ensuite les déplacer (ou les copier sur un autre disque ou partition)

M@kro

Citation de: vernhet le Mai 29, 2024, 08:00:57ce serait de les afficher en liste, pour ensuite les sélectionner toutes pour ensuite les déplacer (ou les copier sur un autre disque ou partition)

En mode ligne de commande sous les Unix/Linux/Mac, tu peux utiliser les commandes suivantes :
- ls : pour lister les fichiers (cf l'exemple de Gér [at] rd)
- cp : pour copier les fichiers sans les déplacer
- move : pour déplacer les fichiers

Il suffit donc de trouver la bonne syntaxe pour faire les opérations que tu souhaites.


vernhet

Citation de: M [at] kro le Mai 29, 2024, 08:10:36En mode ligne de commande sous les Unix/Linux/Mac, tu peux utiliser les commandes suivantes :
- ls : pour lister les fichiers (cf l'exemple de Gér [at] rd)
- cp : pour copier les fichiers sans les déplacer
- move : pour déplacer les fichiers

Il suffit donc de trouver la bonne syntaxe pour faire les opérations que tu souhaites.
malheureusement je ne sais rien faire de tout ça...D'où l'ouverture de ce fil...

Gér@rd

Disons que faire ça manuellement en se baladant de répertoire en répertoire et en tapant quelques lignes de commandes n'est pas très compliqué une fois qu'on a déterminé les bons arguments à utiliser (c'est juste un peu délicat à mettre au point). Mais le problème c'est que ça va bien pour quelqu'un déjà bidouilleur (du shellscript c'est de la programmation légère) mais n'est pas envisageable sans connaissances préalables dans le domaine.

Sinon développer un utilitaire qui peut être mis entre toutes les mains (clic-clic sur une icône, menus déroulants, etc...) c'est bien sûr faisable (et pas très compliqué) mais que c'est une autre paire de manche  : il faut prévoir tous les cas de figure, toutes les erreurs possibles de l'utilisateur et c'est simplement très long et fastidieux (en développement la finition doit représenter 80% du temps total).

Je pense qu'il vaut mieux continuer à chercher s'il n'existe pas d'utilitaire qui serait capable de prendre en compte ce problème. Je connais très mal Excel (je ne m'en sers jamais) mais j'ai lu qu'on pouvait associer une fonction "NBCHAR" à une cellule contenant une chaîne de caractères et renvoyant le nombre de caractères de la chaîne. N'y aurait-il pas un moyen quelconque de récupérer les noms de fichiers dans une feuille de calcul et de trier  ensuite sur la longueur ? Si quelqu'un a une idée...


SeSy

Dans un shell en se positionnant dans le répertoire racine de ta recherche essaye l'instruction suivante :
find . -type f | grep -E -v ^.{8}.JPG | tee ./liste.txt

Elle t'affiche à l'écran et mets dans un fichier liste.txt tous les fichiers 8+3 en JPG
Dis-moi si la liste est bonne et je te donne la suite
Sur fond noir...

M@kro

Citation de: vernhet le Mai 29, 2024, 08:36:04malheureusement je ne sais rien faire de tout ça...D'où l'ouverture de ce fil...

Je m'en doute bien Francis, sinon tu l'aurais déjà fait ;)
Faudrait aussi indiquer quelle est ta structure de tes dossiers, là où se trouve toutes les photos.
Genre c'est sur des disques durs, partitions bien séparées et identifiées ou toutes les photos sont un peu dispersées partout.


M@kro

Pour illustrer mon propos

Sur mon PC, je m'organise comme ci dessous, mes photos étant toutes au même endroit.
(1 disque dur nvme de 2 To divisé en 2 partitions C et D, E et F sont mes 2 hdd photos de 1 To chacun, et le G correspond à du "boulot")



SeSy

Citation de: vernhet le Mai 29, 2024, 08:00:57ce serait de les afficher en liste, pour ensuite les sélectionner toutes pour ensuite les déplacer (ou les copier sur un autre disque ou partition)

Est-ce que tu saurais juste exécuter une ligne de commande ou pas du tout ? Si oui, je peux te la fournir et t'expliquer comment il faut faire
Dernière question : les fichiers déplacés tu veux garder la structure des répertoires ou non ?
Sur fond noir...

Gér@rd

Le plus compliqué pour expliquer et faire faire, c'est pas tellement les lignes de commandes pour générer les listes des fichiers bruts/traités (il y a plusieurs façons de faire, c'est pas le plus dur). Après il suffira de faire du coupé/collé des commandes proposées.

Mais faut déjà réussir à faire ouvrir une fenêtre terminal puis dedans de se positionner sur le ou les bons répertoires...

M@kro

Et connaitre l'organisation actuelle de ses fichiers. Et vers quelle organisation veut il au final ?
Le plus "simple" étant d'avoir 2 disques ou partitions supplémentaires, un pour les jpg brut et l'autre pour les jpg modifiés.
Et donc par extension, connaitre la volumétrie des images à copier ou déplacer.


Gér@rd

Je viens de faire quelques tests sur le vieux Mac piqué à mon aîné et j'ai quelques idées. Mais c'est un ancien Imac 24" (Core I5, 8Go sous Catalina) datant d'il y a plus de 10 ans et du coup je suis pas sûr que tout soit identique aux Macs actuels...

En gros (en bas sur le "dock") j'ai l'icône de la fenêtre terminal (un rectangle noir avec ">_" comme sous windows ou Linux). Si je clique dessus il m'ouvre bien une fenêtre terminal à la racine de l'espace de l'utilisateur où je suis connecté). Mais si j'ouvre "l'explorateur de fichiers" (je sais plus comment ils appellent ça en jargon Apple), je peux naviguer dans mes répertoires. Et là si je vois l'icône du répertoire où sont mes fichiers je peux faire glisser la dite icône sur l'icône "Terminal". La fenêtre Terminal s'ouvre et (miracle) on est alors directement positionné au bon endroit ! Bref, cela permettrait de rester en mode graphique jusqu'au dernier moment, de passer des commandes (par exemple "ls | grep -E -v ^.{8}.jpg" > Traités" qui mettrait le résultat dans "Traités"). Et pour la suite on continue en mode graphique (clic-clic sur l'icône du fichier "Traités").

vernhet si sur ton écran tu as bien aussi l'icône d'une fenêtre Terminal, tu devrais alors pouvoir essayer cette manip...

vernhet

Merci à tous, notamment à Gér [at] rd et M [at] kro. Pour répondre à vos questions, j'ai encore plein de vieux Mac à la maison, de différentes générations avec leurs OS d'époque ou presque, comme une tour encore sous Tiger (!!) conservée pour piloter mon coolscan 5000 via NikonScan !.Mais aussi des portables sous Snow Léopard, un Imac 27 pouce sous High Sierra etc
les photos que je souhaite trier entre fichiers bruts et photos traitées ne se trouvent sur aucun de mes ordis mais sur un DD de 14 TO dupliqué à 3 exemplaires chez moi+ 1 délocalisé mis à jour....de temps en temps!.Mais sur ce disque, des photos traitées peuvent se trouver dans des sous-sous-sous-sous dossiers comportant essentiellement des fichiers Jpeg bruts de carte (qui constituent mes originaux puisque je n'ai jamais fait que très peu de raw).Bien sûr depuis pas mal de temps, je veille à ranger mes photos nommées et postraitées dans un dossier distinct, mais ce ne fut pas le cas dès mes débuts en prise de vue numérique (mà la mi 2002) Mon rêve serait un truc qui fonctionnerait un peu comme Spotlight et qui, qui en lançant la recherche sur tout le DD ferait apparaitre tous les fichiers des photos nommées don postraitées que je pourrais dès lors glisser déposer dans un nouveau dossier sur le même disque ou bien copier sur un autre disque.