IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AppleScript Discussion :

Supprimer contenu des répertoires et sous-répertoires sans supprimer l'arborescence


Sujet :

AppleScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2012
    Messages : 4
    Par défaut Supprimer contenu des répertoires et sous-répertoires sans supprimer l'arborescence
    Bonjour, je suis à la recherche d'un script ou d'une commande qui permet de supprimer tous les fichiers qui sont dans des répertoires et des sous-répertoires mais sans supprimer l'arborescence.

    Est-ce que quelqu'un peut m'aider ? Ce serait super cool

  2. #2
    Membre émérite

    Homme Profil pro
    Directeur de projet
    Inscrit en
    Septembre 2010
    Messages
    606
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Septembre 2010
    Messages : 606
    Par défaut Dossier et sous dossier
    Bonjour Joninho,
    La solution en AppleScript passe par l'appel à une fonction de façon récursive.
    Cela consiste à appeler une fonction (en l'occurrence qui supprime les fichiers et fait la liste des sous-dossiers) et que cette fonction s'appelle elle-même pour descendre dans l'arborescence :

    Voici un script qui fait ce que tu demandes avec des commentaires :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    -- Suppression des fichiers dans l'arborescence des sous dossiers
    -- en conservant les dossiers et sous dossiers
     
    tell application "Finder"
    	set Dossier_en_Cours to ((choose folder with prompt "Choisissez le dossier principal :" without invisibles) as alias) as string
    	display dialog "Attention : L'opération est irreversible !"
    	-- de facto si l'utilisateur clique sur le bouton Annuler, le script s'arrête
     
    	set Liste_Sous_Dossiers to (every folder of folder Dossier_en_Cours) as alias list
    end tell
    -- appelle la sous routine récursive
    Nettoie_Dossier(Dossier_en_Cours, Liste_Sous_Dossiers)
    -- fin du programme principal
     
    -- Sous routine appelée par récursivité
    -- Arguments : Dossier_en_Cours et liste_Sous_Dossier contenus dans ce dossier
    on Nettoie_Dossier(Doss, Liste_Dos)
    	-- supprime les fichiers du Dossier Doss 
    	tell application "Finder" to delete every file of folder Doss -- suppression des fichiers de ce niveau
    	repeat with Un_Dossier in Liste_Dos
    		-- pour chaque sous dossier, liste les sous - sous dossiers
    		tell application "Finder" to set Liste_Sous_Sous_Dossiers to (every folder of folder Un_Dossier) as alias list
    		-- appelle cette sub routine en recursivite pour répéter l'opération pour chaque sous dossier trouvé
    		Nettoie_Dossier(Un_Dossier, Liste_Sous_Sous_Dossiers)
    	end repeat
    end Nettoie_Dossier
    PS : par habitude j'évite la récursivité sur les tell Finder/end tell. c'est la raison pour laquelle j'utilise le Tell par instruction dans le sous routine.

    Cordialement

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2012
    Messages : 4
    Par défaut
    Super, merci beaucoup ! J'avais déjà développé une appli du genre mais jamais en AppleScript.

    Encore merci !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Lister sous-répertoires dans un Tlistbox (Sans liens)
    Par Brain3D dans le forum Débuter
    Réponses: 4
    Dernier message: 11/03/2009, 21h56
  2. Réponses: 2
    Dernier message: 24/10/2007, 15h57
  3. Comptage des sous-répertoires d'un répertoire
    Par GBAGO dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 01/09/2007, 15h11
  4. Taille des répertoires et sous répertoires
    Par Katyucha dans le forum Windows XP
    Réponses: 4
    Dernier message: 24/08/2006, 16h28
  5. Lecture des répertoires et sous répertoire en php
    Par BRAUKRIS dans le forum Langage
    Réponses: 1
    Dernier message: 30/03/2006, 17h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo