IPB

Bienvenue invité ( Connexion | Inscription )

 
Reply to this topicStart new topic
> Faire un script, Pour faire des dossiers numéroté à la suite...
Options
ArtChass
posté 30 Apr 2010, 16:41
Message #1


Macbidouilleur de bronze !
**

Groupe : Membres
Messages : 348
Inscrit : 12 Mar 2006
Lieu : Le Disque Monde
Membre no 57 390



Je suis en train de contrôler des dépenses pour un programme européen, je dois télécharger toutes les dépenses afin de les contrôler hors lignes, donc je dois les télécharger sur mon Mac.

Comme je travaille sur plusieurs, programme et donc plusieurs contrôles, je n'ai pas envie de passer mon temps à créer 260 dossiers à la main.

Je voudrais simplement pouvoir avoir un script qui me demande le nombre de dossiers à créer à tel endroit (Dossier 1, Dossier 2.... Dossier 260). De cette façon, je n'aurais qu'à télécharger les documents au bon endroit ! Un dossier pouvant avoir plusieurs documents (facture, mandat, fiche de présence...)

Est-il possible de faire ça ? Avec un éditeur de script ou automator !

Pour info, je ne connais strictement rien à la programmation !

Quelqu'un aurait-il l'amabilité de m'aider ?

Merci d'avance,

ArtChass

Ce message a été modifié par ArtChass - 30 Apr 2010, 16:45.


--------------------
iMac 27" 3,5 GHz Intel Core i7 / 24 Go ram / SSD 512 Go / NVIDIAGeForceGTX780M 4GB
MacBook Pro Retina 2,6 GHz Intel Core I5 / 8 Go ram / SSD 256 Go

"Il est réconfortant de voir comment peu à peu l'homme a réussi à donner libre cours à sa liberté d'interdire."
Mafalda (Quino)
Membre du club des AIPBP (Anciens Inscrits Pas Beaucoup de Posts) Voir la règle d'éligibilité
Go to the top of the page
 
+Quote Post
sucellus
posté 30 Apr 2010, 19:08
Message #2


Macbidouilleur d'Or !
*****

Groupe : Membres
Messages : 2 098
Inscrit : 4 Oct 2005
Membre no 47 253



Citation (ArtChass @ 30 Apr 2010, 17:41) *
Je suis en train de contrôler des dépenses pour un programme européen, je dois télécharger toutes les dépenses afin de les contrôler hors lignes, donc je dois les télécharger sur mon Mac.

Comme je travaille sur plusieurs, programme et donc plusieurs contrôles, je n'ai pas envie de passer mon temps à créer 260 dossiers à la main.

Je voudrais simplement pouvoir avoir un script qui me demande le nombre de dossiers à créer à tel endroit (Dossier 1, Dossier 2.... Dossier 260). De cette façon, je n'aurais qu'à télécharger les documents au bon endroit ! Un dossier pouvant avoir plusieurs documents (facture, mandat, fiche de présence...)

Est-il possible de faire ça ? Avec un éditeur de script ou automator !

Pour info, je ne connais strictement rien à la programmation !

Quelqu'un aurait-il l'amabilité de m'aider ?

Merci d'avance,

ArtChass

Bonjour

Quel Système Snow Léopard où Léopard (l'éditeur de scripts est pas au même endroit et avec Léopard Progiciel (PPC et Intel) et Snow Léopard Application (Intel))?

Un AS qui marche chez moi sous Léopard.

Code
set chemin to (choose folder "Dossier destination?")
set nbrDossiers to text returned of (display dialog "Nombre de dossiers" default answer "10")

if chemin is "" or nbrDossiers is "" then return -- Si bouton annuler sur un des deux alors quitte

tell application "Finder"
    repeat with i from 1 to nbrDossiers
        make new folder in (folder chemin) with properties {name:"Dossier " & i}
    end repeat
end tell


436f726469616c656d656e74

@+

Ce message a été modifié par sucellus - 30 Apr 2010, 19:18.


--------------------
Impossible de vous dire mon âge, il change tout le temps.

iMac 27" Intel core i5 3,1 Gh Mémoire vive 16 Go Mountain Lion 10.8.4
Go to the top of the page
 
+Quote Post
ArtChass
posté 30 Apr 2010, 22:08
Message #3


Macbidouilleur de bronze !
**

Groupe : Membres
Messages : 348
Inscrit : 12 Mar 2006
Lieu : Le Disque Monde
Membre no 57 390



Merci pour ton aide, ça marche nickel !

Tout a fait ce que je désirais, encore merci, ça me sauve !

jap.gif jap.gif jap.gif jap.gif jap.gif jap.gif jap.gif jap.gif jap.gif jap.gif jap.gif jap.gif jap.gif jap.gif jap.gif jap.gif jap.gif jap.gif jap.gif jap.gif jap.gif jap.gif


Ce message a été modifié par ArtChass - 30 Apr 2010, 22:12.


--------------------
iMac 27" 3,5 GHz Intel Core i7 / 24 Go ram / SSD 512 Go / NVIDIAGeForceGTX780M 4GB
MacBook Pro Retina 2,6 GHz Intel Core I5 / 8 Go ram / SSD 256 Go

"Il est réconfortant de voir comment peu à peu l'homme a réussi à donner libre cours à sa liberté d'interdire."
Mafalda (Quino)
Membre du club des AIPBP (Anciens Inscrits Pas Beaucoup de Posts) Voir la règle d'éligibilité
Go to the top of the page
 
+Quote Post
ArtChass
posté 13 Apr 2015, 00:12
Message #4


Macbidouilleur de bronze !
**

Groupe : Membres
Messages : 348
Inscrit : 12 Mar 2006
Lieu : Le Disque Monde
Membre no 57 390



{petit déterrage}

Bonjour,

Depuis le passage à Yosemite, le script que vous m'aviez fait, et qui fonctionné parfaitement en me rendant un grand service, ne veux plus s'ouvrir !

Je suis sur mon MacBook Pro, fraîchement acheté samedi dernier, et impossible de le lancer sur l'ordinateur !

Ai-je oublié d'installer ou activer quelques choses ?

Je vous transmets le script en pièce jointe.

Merci pour votre aide.

ArtChass

Ce message a été modifié par ArtChass - 13 Apr 2015, 00:16.
Fichier(s) joint(s)
Fichier joint  Script_Creation_Dossier.zip ( 28.5 Ko ) Nombre de téléchargements : 4
 


--------------------
iMac 27" 3,5 GHz Intel Core i7 / 24 Go ram / SSD 512 Go / NVIDIAGeForceGTX780M 4GB
MacBook Pro Retina 2,6 GHz Intel Core I5 / 8 Go ram / SSD 256 Go

"Il est réconfortant de voir comment peu à peu l'homme a réussi à donner libre cours à sa liberté d'interdire."
Mafalda (Quino)
Membre du club des AIPBP (Anciens Inscrits Pas Beaucoup de Posts) Voir la règle d'éligibilité
Go to the top of the page
 
+Quote Post
PBell
posté 13 Apr 2015, 06:57
Message #5


Adepte de Macbidouille
*

Groupe : Membres
Messages : 184
Inscrit : 7 Dec 2013
Lieu : Ile de France
Membre no 188 169



Bonjour,
Je pense qu'il suffit de l'ouvrir de nouveau avec l'éditeur de script et de le recompiler.
Cela peut être soit une question de compilation, soit une question de droit d'accès (Yosemite est particulièrement chatouilleux avec la sécurité des scripts !)

Commence par recompiler.
Tu prends donc l'icône de ton .app que tu déposes sur l'icône de l'éditeur de script, et tu ré-enregistres sous forme d'application, ce qui va le re-compiler.

Cordialement


--------------------
iMac 27 i7 2,8GHz 8Go/1To 10.6.8 /10.10 / 10.11
iMac 20 C.Duo 2,6Ghz 8Go/350Go 10.6.8 / 10.11
Mini C.Duo 2,0Ghz 2Go/500Go 10.6.8
Go to the top of the page
 
+Quote Post
ArtChass
posté 13 Apr 2015, 10:27
Message #6


Macbidouilleur de bronze !
**

Groupe : Membres
Messages : 348
Inscrit : 12 Mar 2006
Lieu : Le Disque Monde
Membre no 57 390



Merci PBell

Je tente !


--------------------
iMac 27" 3,5 GHz Intel Core i7 / 24 Go ram / SSD 512 Go / NVIDIAGeForceGTX780M 4GB
MacBook Pro Retina 2,6 GHz Intel Core I5 / 8 Go ram / SSD 256 Go

"Il est réconfortant de voir comment peu à peu l'homme a réussi à donner libre cours à sa liberté d'interdire."
Mafalda (Quino)
Membre du club des AIPBP (Anciens Inscrits Pas Beaucoup de Posts) Voir la règle d'éligibilité
Go to the top of the page
 
+Quote Post
ArtChass
posté 13 Apr 2015, 12:17
Message #7


Macbidouilleur de bronze !
**

Groupe : Membres
Messages : 348
Inscrit : 12 Mar 2006
Lieu : Le Disque Monde
Membre no 57 390



J'ai tenté, en appuyant sur compilé et en enregistrant, mais il ne veut toujours pas fonctionner.

Je m'y prends peut-être mal !

Nickel, je m'y suis mal pris, ça fonctionne.

Merci PBell !


--------------------
iMac 27" 3,5 GHz Intel Core i7 / 24 Go ram / SSD 512 Go / NVIDIAGeForceGTX780M 4GB
MacBook Pro Retina 2,6 GHz Intel Core I5 / 8 Go ram / SSD 256 Go

"Il est réconfortant de voir comment peu à peu l'homme a réussi à donner libre cours à sa liberté d'interdire."
Mafalda (Quino)
Membre du club des AIPBP (Anciens Inscrits Pas Beaucoup de Posts) Voir la règle d'éligibilité
Go to the top of the page
 
+Quote Post
ArtChass
posté 15 Oct 2017, 23:03
Message #8


Macbidouilleur de bronze !
**

Groupe : Membres
Messages : 348
Inscrit : 12 Mar 2006
Lieu : Le Disque Monde
Membre no 57 390



Bonsoir,

Je reviens vers vous afin de savoir s'il est possible de modifier le script que vous m'aviez fait (voir en pièce jointe).

Depuis que je l'ai, il m'aide énormément, mais je voudrais savoir s'il est possible de le modifier.

Je voudrais que pour les dossiers créés le "0" se mette devant les chiffres 1 à 9. Est-ce possible ?

Exemple :

Aujourd'hui : Dépense 1
mais je voudrais : Dépense 01

Voici le script initial, où dois-je faire la modification ? Si je peux la faire.

CODE
set chemin to (choose folder "Dossier destination ?") -- Choix du dossier

set form to "" -- Initialisation des variables
set form to form & "- N° du premier dossier à créer : " & return
set form to form & "- N° du dernier dossier à créer : "

-- Mémorise l'ancien délimiteur, et utilisation du nouveau
set {od, AppleScript's text item delimiters} to {AppleScript's text item delimiters, ":"}

repeat
-- Boite de dialogue spéciale (faire les 2 entrèes en une seule fenêtre)
display dialog "Entrez vos informations S.V.P :" default answer form
set x to text returned of the result as string -- Résultat mémorisé

--Extraction des resultats
set {ligneUne, ligneDeux} to {paragraph 1 of x, paragraph 2 of x} -- Résultat lue

-- Extractions des données
try -- Si ce n'est pas un nombre
set {numUn, numDer} to {item 2 of text items of ligneUne as integer, item 2 of text items of ligneDeux as integer}

-- Si le dernier nombre est plus petit que le premier, où le premier vide
if numDer < numUn or numUn < 1 then
tell me to activate
display dialog "Premier nombre doit être plus petit que le deuxième" buttons {"Quitter"} default button 1 with icon 0 with title "Je bosse pour toi" giving up after 5
else
exit repeat -- Quitte la fenêtre
end if
on error -- Si un des 2 nombres contient un caractère alphabétique
tell me to activate
display dialog "Erreur dans les nombres" buttons {"Quitter"} default button 1 with icon 0 with title "Patienter" giving up after 5
end try
end repeat

-- Retour au délimiteur mémorisé
set AppleScript's text item delimiters to od

tell application "Finder"
repeat with i from numUn to numDer
make new folder in (folder chemin) with properties {name:"Dépenses " & i}
end repeat
end tell

tell me to activate -- Avertissement de fin de travail
display dialog ((numDer - numUn) as string) & " dossier créés pour toi." buttons {"Quitter"} default button 1 with icon 1 with title "Création Fini" giving up after 5


Ce message a été modifié par baron - 16 Oct 2017, 00:20.
Raison de l'édition : Ajout de balises CODEBOX


--------------------
iMac 27" 3,5 GHz Intel Core i7 / 24 Go ram / SSD 512 Go / NVIDIAGeForceGTX780M 4GB
MacBook Pro Retina 2,6 GHz Intel Core I5 / 8 Go ram / SSD 256 Go

"Il est réconfortant de voir comment peu à peu l'homme a réussi à donner libre cours à sa liberté d'interdire."
Mafalda (Quino)
Membre du club des AIPBP (Anciens Inscrits Pas Beaucoup de Posts) Voir la règle d'éligibilité
Go to the top of the page
 
+Quote Post
teddy7545
posté 16 Oct 2017, 00:16
Message #9


Macbidouilleur de vermeil !
****

Groupe : Membres
Messages : 848
Inscrit : 4 Apr 2004
Lieu : Lorraine - 54
Membre no 17 184



Bonsoir,

En modifiant juste la partie ou le répertoire est créé dans ton script, tu peux faire cela :
Code
tell application "Finder"
    repeat with i from numUn to numDer
        set max_leading_zeros to 2
        set txt_val to text (max_leading_zeros * -1) thru -1 of ("00000000000000000" & i)
        make new folder in (folder chemin) with properties {name:"Dépenses " & txt_val}
    end repeat
end tell

Mais si tu crée plus de 99 dossiers (ce que j'ai cru comprendre dans ton sujet d'origine) alors il te faut prévoir un format à trois chiffres c'est à dire ajouter jusqu'à deux zéro pour les valeurs à un seul chiffre.
Il faudrait alors adapter la variable max_leading_zeros à 3

Comme amélioration, je propose de mettre une détection automatique de la longueur du chiffre numDer et de mettre le nombre de 0 nécessaire automatiquement comme cela :

Code
-- Création des répertoires avec formattage du nombre par ajout des 0 nécessaires (detection auto de la longueur)
tell application "Finder"
    repeat with i from numUn to numDer
        set max_leading_zeros to count (numDer as string)
        set txt_val to text (max_leading_zeros * -1) thru -1 of ("00000000000000000" & i)
        make new folder in (folder chemin) with properties {name:"Dépenses " & txt_val}
    end repeat
end tell

Ca semble fonctionner comme tu le souhaites ...

Ce message a été modifié par teddy7545 - 16 Oct 2017, 00:37.


--------------------
MP Intel Dual Xéon 3 GHz - MacOSX 10.10.3 - ATI Radeon HD 5770 - ATTO UL5D - Apple Cinema HD Display 23 pouces
MBP 15' 2017 - MBP 13' mid 2009 - iMac 24' 8,1 2,8GHz - MP G4 MDD Bi 1,25 GHz - MP G4 Quicksylver 933MHz
Go to the top of the page
 
+Quote Post
ArtChass
posté 16 Oct 2017, 08:26
Message #10


Macbidouilleur de bronze !
**

Groupe : Membres
Messages : 348
Inscrit : 12 Mar 2006
Lieu : Le Disque Monde
Membre no 57 390



Bonjour,

Merci teddy7545 !

C'est exactement ce que je voulais. Ta deuxième proposition fonctionne parfaitement.

Un grand merci pour ton aide


--------------------
iMac 27" 3,5 GHz Intel Core i7 / 24 Go ram / SSD 512 Go / NVIDIAGeForceGTX780M 4GB
MacBook Pro Retina 2,6 GHz Intel Core I5 / 8 Go ram / SSD 256 Go

"Il est réconfortant de voir comment peu à peu l'homme a réussi à donner libre cours à sa liberté d'interdire."
Mafalda (Quino)
Membre du club des AIPBP (Anciens Inscrits Pas Beaucoup de Posts) Voir la règle d'éligibilité
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 utilisateur(s) sur ce sujet (1 invité(s) et 0 utilisateur(s) anonyme(s))
0 membre(s) :

 



Nous sommes le : 24th September 2018 - 22:52