@magicPDF
Bonjour,
J’ai profité du long pont pour analyser quelques fichiers avec différentes extensions.
Les fichiers qui sont reconnus et traités par le script:
pdf, jpeg, png, bmp, mp4, docx, xlsx, flac, rtf, jpg (jpeg), gif, doc, xls, psd, svg, txt, avi, mkv, mov, mp3, zip, rar, tar, epub, pps et ppt (renommé xxx.pps)
Les fichiers “ai” sont renommés “.pdf” (ils sont renseignés comme tel dans le fichier !)
Les fichiers “numbers” et “pages” sont renommés “.zip”
Les fichier .dmg, fmp12 (filemaker), 4db (sgbd 4d ACI), indd (indesign), pict, cwk, sont tous vus de la même manière (octet-stream) je les ai renommés "xxx.indd"
Si d’autres type de fichiers sont trouvés, il sera ajouté au nom du fichier le texte vu et récupéré dans le fichier exemple: (Nom_du_fichier.xxxxxxxxx)
Dis moi si tu as d’autres extensions pour lesquelles tu voudrais vérifier si leurs traitements est possible.
Bon tests…
Bonjour,
J’ai profité du long pont pour analyser quelques fichiers avec différentes extensions.
Les fichiers qui sont reconnus et traités par le script:
pdf, jpeg, png, bmp, mp4, docx, xlsx, flac, rtf, jpg (jpeg), gif, doc, xls, psd, svg, txt, avi, mkv, mov, mp3, zip, rar, tar, epub, pps et ppt (renommé xxx.pps)
Les fichiers “ai” sont renommés “.pdf” (ils sont renseignés comme tel dans le fichier !)
Les fichiers “numbers” et “pages” sont renommés “.zip”
Les fichier .dmg, fmp12 (filemaker), 4db (sgbd 4d ACI), indd (indesign), pict, cwk, sont tous vus de la même manière (octet-stream) je les ai renommés "xxx.indd"
Si d’autres type de fichiers sont trouvés, il sera ajouté au nom du fichier le texte vu et récupéré dans le fichier exemple: (Nom_du_fichier.xxxxxxxxx)
Dis moi si tu as d’autres extensions pour lesquelles tu voudrais vérifier si leurs traitements est possible.
Bon tests…
Bloc de code:
--remet les extensions au nom de fichier
-- sont traités --> pdf, jpeg, png, bmp, mp4, docx, xlsx, flac, rtf, jpg (jpeg), gif, doc, xls, psd, ai (renommé en pdf), indd, svg, txt, avi, mkv, mov, mp3, zip, rar, tar, epub, pps et ppt (renommé xxx.pps)
--les fichiers Numbers ainsi que les fichiers Pages sont renommés xx.zip
--Attention les fichier .dmg, fmp12 (filemaker), 4db (sgbd 4d ACI), indd (indesign), pict, cwk, sont tous vus de la même manière je les ai renommés "xxx.indd"
tell application "Finder"
set Chemin to choose folder with prompt "Sélectionnez le dossier contenant les fichiers sans extension"
my inspecter(Chemin)
end tell
on inspecter(un_dossier)
tell application "Finder"
-- traitement des fichiers :
set les_fichiers to files of un_dossier
repeat with chaque_fichier in les_fichiers
-- traitement d'un fichier
set lefichier to chaque_fichier
set AppleScript's text item delimiters to {""}
set nom to name of chaque_fichier --récupère le nom du fichier
set extens to document file nom in un_dossier --recupere l extension du fichier
set lextension to name extension of extens
if lextension is not "" then
else
set nomcourt to nom
end if
set chaque_fichier to chaque_fichier as string
if lextension is "" then
set genre to do shell script "file --mime-type " & quoted form of POSIX path of chaque_fichier
set sauv to AppleScript's text item delimiters
set AppleScript's text item delimiters to {"/"}
set lextens to last text item of genre
set AppleScript's text item delimiters to {"."}
set dernier to last text item of lextens
set lextens to dernier
set AppleScript's text item delimiters to sauv
if dernier = "document" then set lextens to "docx"
if dernier = "sheet" then set lextens to "xlsx"
if dernier = "msword" then set lextens to "doc"
if dernier = "ms-excel" then set lextens to "xls"
if dernier = "photoshop" then set lextens to "psd"
if dernier = "octet-stream" then set lextens to "indd"
if dernier = "plain" then set lextens to "txt"
if dernier = "x-msvideo" then set lextens to "avi"
if dernier = "x-matroska" then set lextens to "mkv"
if dernier = "quicktime" then set lextens to "mov"
if dernier = "mpeg" then set lextens to "mp3"
if dernier = "x-rar" then set lextens to "rar"
if dernier = "epub+zip" then set lextens to "epub"
if dernier = "ms-powerpoint" then set lextens to "pps"
if dernier = "x-ms-bmp" then set lextens to "bmp"
if dernier = "x-tar" then set lextens to "tar"
if dernier = "svg+xml" then set lextens to "svg"
set lenewfichier to lefichier as string
set newnom to nom & "." & lextens
set name of lefichier to newnom
set lenewfichier to lenewfichier & "." & lextens as alias
set extension hidden of lenewfichier to false
end if
end repeat
-- traitement des dossiers :
set les_dossiers to folders of un_dossier
repeat with chaque_dossier in les_dossiers
-- traitement d'un dossier
my inspecter(chaque_dossier)
end repeat
end tell
end inspecter
tell application "Finder"
activate
(display dialog ("waouou ... Ca y est c'est fait !") buttons {"Salut !"})
end tell