AppleScript déplacer tous les fichiers d'un dossier [RESOLU]

  • Créateur du sujet Créateur du sujet Membre supprimé 27308
  • Date de début Date de début
M

Membre supprimé 27308

Invité
Bonjour,
J'ai un scanner, sur un réseau, qui envoie (via SMB) les scans uniquement dans le dossier Public de mon ordinateur.
Par facilité, je voudrais que mon fichier scan arrive sur mon Bureau.

Je souhaite donc créer un script qui déplace vers le Bureau tous les fichiers du dossier SCAN dès qu'un nouveau fichier arrive dans ce dossier.
Après quelques recherches sur le web, je suis arrivé au script suivant:
Bloc de code:
on adding folder items to "HD Lefennec:Users:lefennec:Public:SCAN" after receiving "HD Lefennec:Users:lefennec:Public:SCAN:*"
    tell application "Finder"
        move files of folder ¬
            "HD Lefennec:Users:lefennec:Public:SCAN" to folder ¬
            "HD Lefennec:Users:lefennec:Desktop"
    end tell
end adding folder items to
Ce qui est après after receiving ("HD Lefennec:Users:lefennec:Public:SCAN:*") ne fonctionne pas.

Je ne sais pas comment indiquer à l'ordinateur qu'il doit faire cette action quel que soit le nom et le type de fichier qui entre dans le dossier "SCAN".

Si quelqu'un pouvait m'aider, ce serait super, merci!

P.S.: j'utilise l'AppleScript depuis ce matin, je n'y connais donc pas grand-chose :(
 
Salut,

Comme ceci pour que tous les éléments déposés dans ton dossier soient redirigés sur le bureau
Bloc de code:
on adding folder items to theFolder after receiving fileList
	repeat with aFile in fileList
		tell application "Finder" to move aFile to desktop
	end repeat
end adding folder items to

il faut bien sûr lier ton script au dossier de réception, je pense que tu sais faire…
 
Merci pour ta réponse.
Mais je n'y arrive pas encore.

Si je fais:
Bloc de code:
on adding folder items to "HD Lefennec:Users:lefennec:Public:SCAN" after receiving fileList
    repeat with aFile in fileList
        tell application "Finder" to move aFile to desktop
    end repeat
end adding folder items to
ça ne fonctionne pas.

Si je fais:
Bloc de code:
on adding folder items to "HD Lefennec:Users:lefennec:Public:SCAN" after receiving fileList
    repeat with aFile in fileList
        tell application "Finder" to move aFile to 
"HD Lefennec:Users:lefennec:Public:Desktop"
    end repeat
end adding folder items to
ça ne fonctionne pas non plus.

Quand je mets un nouveau fichier dans le dossier SCAN, il y reste et ceux qui s'y trouvent déjà y restent aussi.

Dois-je encore rajouter du code dans mon script? (Le code que j'ai indiqué est la totalité du code présent dans mon script).
Dois-je redémarrer mon Mac?

Désolé, mais comme je l'ai précisé, je n'y connais encore rien en AppleScript et je passe certainement à côté d'un détail :(
 
Alors, le code que j'ai donné plus haut ne doit pas être modifié, il ne déplace que les nouveaux éléments.

Le code ci-dessous déplace tous les fichiers contenu dans le dossier et ne doit pas être modifié

Bloc de code:
on adding folder items to theFolder after receiving fileList
	tell application "Finder"
		set theFiles to every file of theFolder
		move theFiles to desktop
	end tell
end adding folder items to

As-tu bien placé le script dans /Utilisateurs/Maison/Bibliothèque/Scripts/Folder Action Scripts/ puis fait un clic droit sur le dossier de réception => Plus => Configurer les actions de dossier ?
 
OK, OK, je n'avais pas compris que je ne devais pas indiquer de chemin d'accès dans le code :siffle:

Et bien, grand merci, ton code fonctionne parfaitement :up:

Bonne journée.

P.S.: comment je dois faire pour marquer mon problème comme résolu?
 
Bonsoir,

ce script m'intéresse, mais moi j'aimerais pouvoir déplacer le fichier dans un dossier précis et le script n'accepte pas les "/" pour les chemins de fichiers que faire?
 
Bonsoir,

Il faut le convertir avec POSIX file .

Voici un exemple :
Bloc de code:
set destFolder to (POSIX file "/Users/jack/Desktop/dossier sans titre 6") as alias
Bonsoir,

Et comment faire si je souhaite envoyer le contenue de plusieurs dossier dans la corbeille ? quel serai le script ?

Merci pour votre aide.
 
Bloc de code:
tell application "Finder"
	set contenuDuDossier to every file of folder ((POSIX file "/private/var/vm/") as alias)
	move contenuDuDossier to trash
end tell