Version imprimable du sujet
Forums MacBidouille _ La Programmation En Général _ Renommer fichier .doc(x) avec les 10 ou 20 premiers caractères du document
Écrit par : Mac Arthur 27 Nov 2020, 08:08
Bonjour,
J'ai entre les mains un disque défectueux pour un utilisateur qui cherche à récupérer ses données.
Disk Drill après une analyse m'a permis de faire remonter à la surface:
- Quelques répertoires intacts (pas grand chose..)
- De la musique sous forme de 001.mp3, 002.mp3 etc. Les tags étant là pour la plupart d'entre eux, BeaTunes fait des merveilles et mouline inlassablement pour les prochaines 36 heures (185 000 morceaux environ). On verra ensuite...
- J'ai également pleins de répertoires avec des fichiers doc ou docx numérotés 001.doc, 002.doc (1000 fichiers par répertoires 001, 002 etc.).
Un aperçu de ces fichiers montre que le contenu est sans doute intact. Bien sûr, en l'état, ces documents sont pratiquement inutilisables puisqu'on ne sait pas ce qu'il y a dedans.
J'ai cherché sur le net des scripts(?) permettant de renommer ces .doc avec par exemple les 20 premiers caractères du document. Ca ne rendra pas au doc sont titre intilital mais ce sera au moins une ébauche de classement: Savoir si ça parle plutôt des blagounettes de Baron (coucou) ou des commandes Terminal de l'ami Jeanjd63 (re coucou a que).
Qui pourrait m'aider?
Je ne suis pas bon en programmation du tout et donc... au point mort
Je suppose également que je ne suis pas le premier à me poser cette question !
Par avance merci à ceux qui vont me dire "mais c'est super fastoche ! regarde..."
Mac
Écrit par : jeanjd63 27 Nov 2020, 08:20
Coucou.
Aller un début de piste.
Peux-tu tester la commande suivante (inutile de te préciser par quel moyen )
Code
textutil -info Nom_Fichier.docx | grep Contents
Écrit par : Mac Arthur 27 Nov 2020, 08:45
Il est décidément partout
Alors en adaptant la commande ça donne ça sur un essai de 10 fichiers:
Code
Last login: Fri Nov 27 14:41:39 on ttys000
domhack@iMac ~ % textutil -info Nom_Fichier.doc/Volumes/SATA3\ 8To/Disque\ PYC\ récupéré/doc\ copy/Group\ 2/file001000.doc /Volumes/SATA3\ 8To/Disque\ PYC\ récupéré/doc\ copy/Group\ 2/file001001.doc /Volumes/SATA3\ 8To/Disque\ PYC\ récupéré/doc\ copy/Group\ 2/file001002.doc /Volumes/SATA3\ 8To/Disque\ PYC\ récupéré/doc\ copy/Group\ 2/file001003.doc /Volumes/SATA3\ 8To/Disque\ PYC\ récupéré/doc\ copy/Group\ 2/file001004.doc /Volumes/SATA3\ 8To/Disque\ PYC\ récupéré/doc\ copy/Group\ 2/file001005.doc /Volumes/SATA3\ 8To/Disque\ PYC\ récupéré/doc\ copy/Group\ 2/file001006.doc /Volumes/SATA3\ 8To/Disque\ PYC\ récupéré/doc\ copy/Group\ 2/file001007.doc /Volumes/SATA3\ 8To/Disque\ PYC\ récupéré/doc\ copy/Group\ 2/file001008.doc /Volumes/SATA3\ 8To/Disque\ PYC\ récupéré/doc\ copy/Group\ 2/file001009.doc /Volumes/SATA3\ 8To/Disque\ PYC\ récupéré/doc\ copy/Group\ 2/file001010.doc | grep Contents
Error reading Nom_Fichier.doc/Volumes/SATA3 8To/Disque PYC récupéré/doc copy/Group 2/file001000.doc. The file doesn’t exist.
Contents: Memorandum of Understanding be...
Contents: Compte Rendu de l’audience de ...
Contents: HOTEL DE LA GARE...
Contents: A faire :...
Contents: Addendum au contrat du 22/07/2...
Contents: M. TOUCH Sopheap...
Contents: HYPERLINK "http://www.boreibo...
Contents: ...
domhack@iMac ~ %
Le fichier file1000 est pourtant visible en aperçu.
Pour le reste un début de résultat, même si j'ai l'impression qu'ils n'ont pas été tous screenés (8 résultats seulement)
Écrit par : jeanjd63 27 Nov 2020, 08:48
Alors, pour la commande teste :
Code
textutil -info /Volumes/SATA3\ 8To/Disque\ PYC\ récupéré/doc\ copy/Group\ 2/file001000.doc
Voir s'il y aurait une rubrique plus significative.
Perso je n'ai par foule de fichiers doc
Écrit par : Mac Arthur 27 Nov 2020, 08:50
Code
Last login: Fri Nov 27 14:42:17 on ttys000
domhack@iMac ~ % textutil -info /Volumes/SATA3\ 8To/Disque\ PYC\ récupéré/doc\ copy/Group\ 2/file001000.doc
File: /Volumes/SATA3 8To/Disque PYC récupéré/doc copy/Group 2/file001000.doc
Type: Word format
Size: 63488 bytes
Length: 6634 characters
Title:
Author: PYC
Last Editor: PYC
Company:
Subject:
Keywords:
Created: 2016-09-27 00:37:00 +0000
Last Modified: 2016-09-27 00:37:00 +0000
Contents: Accord de financement ...
domhack@iMac ~ %
Écrit par : jeanjd63 27 Nov 2020, 09:03
Ou mieux :
Code
mdls /Volumes/SATA3\ 8To/Disque\ PYC\ récupéré/doc\ copy/Group\ 2/file001000.doc | grep kMDItemDisplayName
Écrit par : Mac Arthur 27 Nov 2020, 09:04
Ca se discute ou je n'ai pas compris !
Code
Last login: Fri Nov 27 14:52:18 on ttys000
domhack@iMac ~ %
mdls /Volumes/SATA3\ 8To/Disque\ PYC\ récupéré/doc\ copy/Group\ 2/file001000.doc | grep kMDItemDisplayName
_kMDItemDisplayNameWithExtensions = "file001000.doc"
kMDItemDisplayName = "file001000.doc"
domhack@iMac ~ %
Écrit par : jeanjd63 27 Nov 2020, 09:21
Donc que renvoie :
Code
mdls /Volumes/SATA3\ 8To/Disque\ PYC\ récupéré/doc\ copy/Group\ 2/file001000.doc
Écrit par : Mac Arthur 27 Nov 2020, 09:22
Code
Last login: Fri Nov 27 15:06:17 on ttys000
domhack@iMac ~ % mdls /Volumes/SATA3\ 8To/Disque\ PYC\ récupéré/doc\ copy/Group\ 2/file001000.doc
_kMDItemDisplayNameWithExtensions = "file001000.doc"
kMDItemAuthors = (
"PYC3
)
kMDItemContentCreationDate = 2020-11-25 01:17:42 +0000
kMDItemContentCreationDate_Ranking = 2020-11-25 00:00:00 +0000
kMDItemContentModificationDate = 2020-11-25 01:17:42 +0000
kMDItemContentModificationDate_Ranking = 2020-11-25 00:00:00 +0000
kMDItemContentType = "com.microsoft.word.doc"
kMDItemContentTypeTree = (
"com.microsoft.word.doc",
"public.data",
"public.item"
)
kMDItemDateAdded = 2020-11-27 07:38:16 +0000
kMDItemDateAdded_Ranking = 2020-11-27 00:00:00 +0000
kMDItemDisplayName = "file001000.doc"
kMDItemDocumentIdentifier = 0
kMDItemFSContentChangeDate = 2020-11-25 01:17:42 +0000
kMDItemFSCreationDate = 2020-11-25 01:17:42 +0000
kMDItemFSCreatorCode = ""
kMDItemFSFinderFlags = 0
kMDItemFSHasCustomIcon = (null)
kMDItemFSInvisible = 0
kMDItemFSIsExtensionHidden = 0
kMDItemFSIsStationery = (null)
kMDItemFSLabel = 0
kMDItemFSName = "file001000.doc"
kMDItemFSNodeCount = (null)
kMDItemFSOwnerGroupID = 80
kMDItemFSOwnerUserID = 501
kMDItemFSSize = 63488
kMDItemFSTypeCode = ""
kMDItemInterestingDate_Ranking = 2020-11-25 00:00:00 +0000
kMDItemKind = "Microsoft Word 97 - 2004 document (.doc)"
kMDItemLogicalSize = 63488
kMDItemPhysicalSize = 65536
domhack@iMac ~ %
Écrit par : jeanjd63 27 Nov 2020, 09:48
Donc textutil serait le mieux :
Contents: Accord de financement
Reste à intégrer cela dans une commande Find.
On verra ça plus tard.
Écrit par : Vincent 27 Nov 2020, 10:02
Sinon, pour 25€
https://www.publicspace.net/ABetterFinderRename/Version11.html
Écrit par : Mac Arthur 27 Nov 2020, 10:05
Citation (Vincent @ 27 Nov 2020, 16:02)
Sinon, pour 25€
https://www.publicspace.net/ABetterFinderRename/Version11.html
J'ai regardé
C'est ultra complet mais je ne vois pas d'option permettant d'aller chercher une chaîne de caractères à l'intérieur d'un document...
Écrit par : jeanjd63 27 Nov 2020, 12:51
Donc tu peux commencer par voir avec ces 2 commandes (totalement gratuites ) si déjà tu trouves des infos :
Code
find /Volumes/SATA3\ 8To/Disque\ PYC\ récupéré/ -name "*doc" -exec textutil -info {} + > Fichier.txt
Puis
Code
grep -e File -e Contents -e Title Fichier.txt
Il y a création d'un fichier Fichier.txt sur la racine de ton espace utilisateur.
Écrit par : Mac Arthur 27 Nov 2020, 13:47
Ok ça semble marcher mais:
- La longueur de l'item "content" qui reprend je suppose le début du document n'est pas suffisante pour commencer à donner un caractère explicite au document. Est-ce paramétrable?
- Plus génant, ce fichier .txt est en fait une table des matière dans laquelle on irait chercher les infos, puis, à l'aide du numéro de fichier me permettrait de retrouver le bon doc.
En théorie ça marche mais j'aimerais bien renommer ces 001.doc, 002.doc directement avec ce content en allongeant son contenu....
Je sais je suis un peu...
Citation (Vincent @ 27 Nov 2020, 16:02)
Sinon, pour 25€
https://www.publicspace.net/ABetterFinderRename/Version11.html
Réponse du service client (très réactif sur ce coup là !):
"Hi,
I'm afraid A Better Finder Rename does not read microsoft word meta-data..
Best regards,
Frank
Écrit par : jeanjd63 27 Nov 2020, 13:51
Citation (Mac Arthur @ 27 Nov 2020, 13:47)
Ok ça semble marcher mais:
- La longueur de l'item "content" qui reprend je suppose le début du document n'est pas suffisante pour commencer à donner un caractère explicite au document. Est-ce paramétrable?
- Plus génant, ce fichier .txt est en fait une table des matière dans laquelle on irait chercher les infos, puis, à l'aide du numéro de fichier me permettrait de retrouver le bon doc.
En théorie ça marche mais j'aimerais bien renommer ces 001.doc, 002.doc directement avec ce content en allongeant son contenu....
Je sais je suis un peu...
......
Alors je n'ai pas dit que là nous avions une solution clé en main.
Il faut commencer par vérifier si tu trouves des infos acceptables et si oui il faudra travailler encore un peu, mais comme dirait Hassan Céèf pas de problèmes, on peut le faire.
Écrit par : Mac Arthur 27 Nov 2020, 14:09
Je me doutais bien qu'on était pas au bout
un extrait du fichier...
Code
File: /Volumes/SATA3 8To/Disque PYC récupéré//doc copy/Group 2/file001644.doc
Type: Word format
Size: 32768 bytes
Length: 6878 characters
Title: ILE DE KOH KONG,
Author: pacific computer
Last Editor: MR xxx
Company: pacific computer, phnom penh
Created: 2001-06-19 02:31:00 +0000
Last Modified: 2002-06-20 09:37:00 +0000
Contents: KOH KONG...
File: /Volumes/SATA3 8To/Disque PYC récupéré//doc copy/Group 2/file001122.doc
Type: Word format
Size: 39424 bytes
Length: 956 characters
Title: Facturée à Ratanakiri / Invoiced at Ratanakiri
Author: Mr.xxx
Last Editor: Rafael Rxx
Created: 2006-01-11 08:55:00 +0000
Last Modified: 2009-01-07 09:12:00 +0000
File: /Volumes/SATA3 8To/Disque PYC récupéré//doc copy/Group 2/file001136.doc
Type: Word format
Size: 39424 bytes
Length: 933 characters
Title: Facturée à Ratanakiri / Invoiced at Ratanakiri
Author: Mr.xxx
Last Editor: Rafael xxx
Created: 2006-01-11 08:55:00 +0000
Last Modified: 2008-09-08 01:41:00 +0000
File: /Volumes/SATA3 8To/Disque PYC récupéré//doc copy/Group 2/file001888.doc
Type: Word format
Size: 29696 bytes
Length: 2066 characters
Author: Mr.xx
Last Editor: TERRES ROUGES
Created: 2005-12-21 02:23:00 +0000
Last Modified: 2005-12-21 02:23:00 +0000
File: /Volumes/SATA3 8To/Disque PYC récupéré//doc copy/Group 2/file001650.doc
Type: Word format
Size: 26624 bytes
Length: 6691 characters
Author: Frederic xx
Last Editor: pacific computer
Company: Phnom Penh, Cambodia
Created: 2001-06-02 04:08:00 +0000
Last Modified: 2001-08-28 07:51:00 +0000
Contents: SIEM REAP : SIX DOLLARS LE TOU...
File: /Volumes/SATA3 8To/Disque PYC récupéré//doc copy/Group 2/file001452.doc
Type: Word format
Size: 1437184 bytes
Length: 171335 characters
Title: Microsoft Office 2000
Author: SR
Last Editor: TERRES xxx
Company: -
Subject: Use for Font Limon for Microsoft Office 2000.
Keywords: Normal Template
Created: 2006-05-06 07:25:00 +0000
Last Modified: 2006-05-07 08:45:00 +0000
Contents: D’une culture de guerre à une ...
File: /Volumes/SATA3 8To/Disque PYC récupéré//doc copy/Group 2/file001334.doc
Type: Word format
Size: 36864 bytes
Length: 11958 characters
Title: Microsoft Office 2000
Author: TERRES xxx
Last Editor: TERRES xxx
Company: -
Subject: Use for Font Limon for Microsoft Office 2000.
Keywords: Normal Template
Created: 2006-04-26 13:53:00 +0000
Last Modified: 2006-04-26 13:53:00 +0000
Contents: Les Relais du Rien...
L'item "content" n'est pas toujours présent. Peut-être du au format du .doc (différentes versions de Word? Je ne sais pas...
Écrit par : jeanjd63 27 Nov 2020, 15:03
As-tu essayé de passer la commande suivante ?
Écrit par : Mac Arthur 27 Nov 2020, 23:56
Coucou matinal...
Oui le retour que je te donne est bien celui obtenu après passage des 2 commandes.
Écrit par : jeanjd63 28 Nov 2020, 09:03
Citation (Mac Arthur @ 27 Nov 2020, 23:56)
Coucou matinal...
Oui le retour que je te donne est bien celui obtenu après passage des 2 commandes.
Salut.
Tu listes le fichier, mais la seconde commande ne donne qu'un retour à l'écran.
On va arranger ça :
Code
grep -e File -e Contents -e Title Fichier.txt > Fichier_2.txt
Et tu pourras lister le Fichier_2.txt.
Écrit par : Mac Arthur 28 Nov 2020, 13:51
Un extrait, on progresse !
Code
File: /Volumes/SATA3 8To/Disque PYC récupéré//doc copy/Group 2/file001042.doc
Title: Abt 29/07
Contents: Cher abonné, cher fidèle lecte...
File: /Volumes/SATA3 8To/Disque PYC récupéré//doc copy/Group 2/file001724.doc
Title: Microsoft Office 2000
File: /Volumes/SATA3 8To/Disque PYC récupéré//doc copy/Group 2/file001718.doc
Title: Microsoft Office 2000
File: /Volumes/SATA3 8To/Disque PYC récupéré//doc copy/Group 2/file001095.doc
Title: Abt 23-09
Contents: Cher abonné, cher fidèle lect...
File: /Volumes/SATA3 8To/Disque PYC récupéré//doc copy/Group 2/file001081.doc
Title: Abt 28-29-30 Mqi
Contents: Cher abonné, cher fidèle lecte...
File: /Volumes/SATA3 8To/Disque PYC récupéré//doc copy/Group 2/file001917.doc
Title: Microsoft Office 2000
File: /Volumes/SATA3 8To/Disque PYC récupéré//doc copy/Group 2/file001903.doc
Contents: FRAIS DE FONCTIONNEMENT MENSUE...
File: /Volumes/SATA3 8To/Disque PYC récupéré//doc copy/Group 2/file001902.doc
Title: FRAIS DE FONCTIONNEMENT MENSUELS
Contents: FRAIS DE FONCTIONNEMENT MENSUE...
File: /Volumes/SATA3 8To/Disque PYC récupéré//doc copy/Group 2/file001916.doc
Contents: Pool Rules & Regulations...
File: /Volumes/SATA3 8To/Disque PYC récupéré//doc copy/Group 2/file001080.doc
Title: Abt 14-15-16/05
Contents: Cher abonné, cher fidèle lecte...
Propulsé par Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)