# Création d'un listing avec AppleScript



## RobinRLP (2 Juillet 2011)

Bonjour à tous,
Je cherche un script Apple pour créer un listing de mes fichiers .mp3 contenus dans un dossier sous un fichier .txt, .doc peu importe.
J'ai déjà un peu chercher sur le forum, et j'ai trouvé ceci : http://forums.macg.co/mac-os-x/creation-dun-fichier-listing-a-partir-du-finder-579252.html
Malheureusement, le script qui est présenté dans le sujet ne correspond pas tout à fait à ce que je cherche, puisque celui-ci ne fait le listing que des fichiers .doc (alors que je cherche la même chose, mais avec des fichiers .mp3).
J'ai essayé de le trafiquer un peu, mais mes connaissances en informatique ne sont pas assez suffisantes pour obtenir ce que je désire.
J'espère que vous pourrez m'aider aussi tôt que possible.
Merci à tous par avance.
Robin.


----------



## ntx (2 Juillet 2011)

ls *.mp3 > monfichier.txt

Ah ! si tu savais utiliser le terminal


----------



## ceslinstinct (2 Juillet 2011)

RobinRLP a dit:


> Bonjour à tous,
> Je cherche un script Apple pour créer un listing de mes fichiers .mp3 contenus dans un dossier sous un fichier .txt, .doc peu importe.
> J'ai déjà un peu chercher sur le forum, et j'ai trouvé ceci : http://forums.macg.co/mac-os-x/creation-dun-fichier-listing-a-partir-du-finder-579252.html
> Malheureusement, le script qui est présenté dans le sujet ne correspond pas tout à fait à ce que je cherche, puisque celui-ci ne fait le listing que des fichiers .doc (alors que je cherche la même chose, mais avec des fichiers .mp3).
> ...


Bonjour

Dans le code du post 7 tente de changer *.doc* par *.mp3* et *Fichiers doc.txt* en *Fichiers mp3.txt* pour voir si ça marche.

@+


----------



## RobinRLP (3 Juillet 2011)

Ce que je viens de faire, voici le message d'erreur:


```
error "Il est impossible de rendre \"Macintosh HD:Users:Robin:Desktop:Musiques: Fichiers mp3.txt\" en type file specification." number -1700 from "Macintosh HD:Users:Robin:Desktop:Musiques: Fichiers mp3.txt" to file specification
```
Je met quand même le code complet modifié:


```
-- CRÉATION FICHIER LISTING .mp3 D'UN DOSSIER

set votreChoix to choose folder

set listeNoms to ""

tell application "Finder"
    set liste_Fichiers to every file of entire contents of folder (votreChoix as alias) whose name ends with ".mp3"
    
    if (count liste_Fichiers) is not 0 then -- Si trouve aucun .mp3, passe (évite de créer un fichier vide)
        
        repeat with i from 1 to (the count items of liste_Fichiers)
            -- \\\ LISTE DES NOMS DE FICHIERS .mp3 SEULEMENT /// --
            set nom to name of item i of text items of liste_Fichiers as text
            set listeNoms to listeNoms & nom & return
        end repeat
        
        -- Création du fichier si il n'existe pas dans le dossier sélectionné
        -- en premier dans le dossier (le nom commence par le caractère espace)
        set chemin_Fichier to (votreChoix as text) & " Fichiers mp3.txt" as file specification
        
        try
            set chemin_Fichier to open for access chemin_Fichier with write permission
            set eof chemin_Fichier to 0 -- Pour éffacer le contenu du fichier
            write listeNoms starting at eof to chemin_Fichier
            close access chemin_Fichier
        on error
            close access chemin_Fichier
        end try
        
    end if
end tell
```

J'attends votre aide rapidement.


----------



## zeltron54 (3 Juillet 2011)

Bonjour,

Si c'est juste pour copier les titres des fichiers contenus dans un dossier,
 tu glisses ce dossier sur une fenêtre de firefox, tu obtiens la liste et tu fais un copié collé sur le document texte de ton choix.

Ou simplement dans le finder un copié des fichiers , puis dans texedit un "coller et appliquer le style actuel" tu as ta liste ...


----------



## RobinRLP (3 Juillet 2011)

Certes, mais ce n'est pas exactement ce que je cherche..
J'aimerai vraiment trouver une solution à l'erreur présente dans le code pour avoir uniquement une liste des musiques, et pas la taille du fichier, la date et l'heure de la dernière modification..


----------



## zeltron54 (3 Juillet 2011)

Pour qu"un fichier txt soit créer dans le dossier choisi, tu modifies le script comme ça.

-- CRÉATION FICHIER LISTING .mp3 D'UN DOSSIER

set votreChoix to choose folder

set listeNoms to ""

tell application "Finder"
    set liste_Fichiers to every file of entire contents of folder (votreChoix as alias) whose name ends with ".mp3"

    if (count liste_Fichiers) is not 0 then -- Si trouve aucun .mp3, passe (évite de créer un fichier vide)

        repeat with i from 1 to (the count items of liste_Fichiers)
            -- \\\ LISTE DES NOMS DE FICHIERS .mp3 SEULEMENT /// --
            set nom to name of item i of text items of liste_Fichiers as text
            set listeNoms to listeNoms & nom & return
        end repeat

        -- Création du fichier si il n'existe pas dans le dossier sélectionné
        -- en premier dans le dossier (le nom commence par le caractère espace)
        set chemin_Fichier to (votreChoix as text) & " Fichiers mp3.txt" as string
        try
            set chemin_Fichier to open for access chemin_Fichier with write permission
            set eof chemin_Fichier to 0 -- Pour éffacer le contenu du fichier
            write listeNoms starting at eof to chemin_Fichier
            close access chemin_Fichier
        on error
            close access chemin_Fichier
        end try

    end if
end tell



Mais cela ne fait rien de plus qu'avec le copier coller du finder dans textedit !


----------



## ntx (3 Juillet 2011)

21 lignes de code contre une commande shell très simple


----------



## ceslinstinct (3 Juillet 2011)

RobinRLP a dit:


> Certes, mais ce n'est pas exactement ce que je cherche..
> J'aimerai vraiment trouver une solution à l'erreur présente dans le code pour avoir uniquement une liste des musiques, et pas la taille du fichier, la date et l'heure de la dernière modification..


Bonjour

Le code normalement ne donne que les noms des musiques.

Ce qu'il faudrait savoir c'est quel fauve tu utilise.

Les codes créés avec Léopard ne fonctionnent pas obligatoirement avec Snow Léopard, donc des modifications à faire.

@+


----------



## RobinRLP (13 Juillet 2011)

Je tourne sous Mac OS X 10.6.8

@ntx : Commande shell qui est ?


----------



## Larme (13 Juillet 2011)

Son premier message...
Mais j'ai l'impression qu'il manque un supérieur... Merde je doute... J'testerais plus tard...


Sinon, dans iTunes, on peut exporter sa bibliothèque ou ses playlists au format .txt entre autre, hein


----------



## RobinRLP (13 Juillet 2011)

Il faut mettre quoi dans le terminal alors? x)


----------



## ntx (13 Juillet 2011)

cd <le chemin vers ton dossier>
ls *.mp3 > monfichier.txt

Pour le chemin du dossier, tu peux faire un glissé-déposé de celui à partir du Finder dans la fenêtre du terminal.


----------

