Création simple dossier + arborescence

AnaïsG

Nouveau membre
28 Février 2018
5
0
25
Bonjour à tous,

En lisant le litre du poste, on pourrait croire qu'il s'agit encore d'un sujet ultra redondant et courant.
Le soucis c'est que malgré diverses recherches sur des forum ou autre je ne trouve pas de réponse à ma question.

Pour mon travail, dans un processus d'uniformisation j'aimerais créer un script simple de création de dossier avec des sous dossier et que le tout soit "dissimuler". Je vais essayer de rédiger un exemple pour que ce soit plus clair.

J'aimerais que dans un textedit (pour exemple, cela peut être ailleurs), juste en tapant "Dossier 1" il y ai automatiquement la création de "Dossier 1" et a l'intérieur " sous dossier 1", "sous dossier 2", "sous dossier 3" ect ...
Le nom du dossier serait variable a chaque utilisation du script mais les noms des sous dossiers seraient fixes.

Pardonnez moi, si ma requête semble évidente mais je suis assez novice dans ce domaine.
Bonne journée !
 

zeltron54

Membre d’élite
29 Mars 2008
1 779
262
Lorraine
Bonjour,
Pour réfléchir à la question, il faudrait avoir plus d'infos:
1 - le dossier doit se créer à quel endroit ? fixe ou à définir par l'utilisateur ?
2 - Le nombre de sous dossier est fixe ou à définir par l'utilisateur.
Au vue de ces éléments on peut envisager de créer un applescript qui te demande les infos et fait le job.
 

AnaïsG

Nouveau membre
28 Février 2018
5
0
25
Bonjour,
Pour réfléchir à la question, il faudrait avoir plus d'infos:
1 - le dossier doit se créer à quel endroit ? fixe ou à définir par l'utilisateur ?
2 - Le nombre de sous dossier est fixe ou à définir par l'utilisateur.
Au vue de ces éléments on peut envisager de créer un applescript qui te demande les infos et fait le job.
Alors pour répondre, ces deux paramètres seront fixes. Création du dossier sur le Bureau et il y aura toujours le même nombre de sous dossier s'appelant toujours pareils.
 

zeltron54

Membre d’élite
29 Mars 2008
1 779
262
Lorraine
il y aura toujours le même nombre de sous dossier s'appelant toujours pareils.
OK ! alors il faut les noms, pour les intégrer dans le script !

Je résume: le script te demande le nom du dossier à créer puis crée sur le bureau ce dossier avec les sous dossier dedans ?
 

AnaïsG

Nouveau membre
28 Février 2018
5
0
25
OK ! alors il faut les noms, pour les intégrer dans le script !

Je résume: le script te demande le nom du dossier à créer puis crée sur le bureau ce dossier avec les sous dossier dedans ?
Tu as très bien résumer le truc !

Pour les nom des dossiers :
IMAGES
ORIGINAUX
GCR
ELEMENTS
VALIDATIONS
 

byte_order

Membre confirmé
31 Juillet 2012
304
64
Dans un fichier create_empty_tree.sh

Bloc de code:
#!/bin/sh

ROOT="$1"
for subdir in IMAGES ORIGINAUX GCR ELEMENTS VALIDATIONS; do
  mkdir -p "$ROOT/$subdir"
done
Puis pour l'executer :

Bloc de code:
./create_empty_tree.sh DOSSIER1
 

byte_order

Membre confirmé
31 Juillet 2012
304
64
Autre solution très simple, sans scripting : avoir une arborescence vide de modèle quelques parts, et utiliser le Finder pour :
  • la dupliquer
  • renommer le nom du dossier racine.
Hop.
 

AnaïsG

Nouveau membre
28 Février 2018
5
0
25
Après concertation avec mes collègues il veulent faire quelques modifs dans l'arborescence.
Mettre le dossier GCR dans le sous dossier ELEMENT et y rajouter également un sous dossier MAIL.
Ce qui donnerais.

DOSSIER 1
IMAGES
ORIGINAUX
VALIDATION
ELEMENT
GCR
MAILS
Puis pour l'executer :

Bloc de code:
./create_empty_tree.sh DOSSIER1
Il y a t'il un moyen de s'astreindre de la commande d'exécution, pour simplement avoir a rentrer le nom du dossier puis "valider" ?
 

zeltron54

Membre d’élite
29 Mars 2008
1 779
262
Lorraine
voila un script qui fait le job.
Tu peux l'enregistrer au format application et lancer cette appli au besoin
Bloc de code:
display dialog "Entrer le nom du dossier à créer: " default answer "Dossier"
set lenom to text returned of result

tell application "Finder"
    set lenom to lenom as string
    set chemin to (path to desktop folder) as string
    set chemin2 to chemin & lenom as string
    make new folder at chemin with properties {name:lenom}
    make new folder at chemin2 with properties {name:"IMAGES"}
    make new folder at chemin2 with properties {name:"ORIGINAUX"}
    make new folder at chemin2 with properties {name:"GCR"}
    make new folder at chemin2 with properties {name:"ELEMENTS"}
    make new folder at chemin2 with properties {name:"VALIDATIONS"}
end tell
Tu as donc plusieurs possibilités avec celle proposés par "byte_order"
 

byte_order

Membre confirmé
31 Juillet 2012
304
64
Ben oui, il suffit de créer cette arborescence vide quelque part, et à chaque besoin, la dupliquer via Finder et renommer le dossier dupliqué comme on le souhaite.

Sinon, bien là faut en passer par Automator/AppleScript j'imagine.
 

zeltron54

Membre d’élite
29 Mars 2008
1 779
262
Lorraine
Voila le script modifié avec gcr et mails
Bloc de code:
display dialog "Entrer le nom du dossier à créer: " default answer "Dossier"
set lenom to text returned of result

tell application "Finder"
    set lenom to lenom as string
    set chemin to (path to desktop folder) as string
    set chemin2 to chemin & lenom as string
    set chemin3 to chemin2 & ":ELEMENTS" as string
   
    make new folder at chemin with properties {name:lenom}
    make new folder at chemin2 with properties {name:"IMAGES"}
    make new folder at chemin2 with properties {name:"ORIGINAUX"}
    make new folder at chemin2 with properties {name:"ELEMENTS"}
    make new folder at chemin2 with properties {name:"VALIDATIONS"}
    make new folder at chemin3 with properties {name:"GCR"}
    make new folder at chemin3 with properties {name:"MAILS"}
end tell
 
  • J’aime
Réactions: daffyb

daffyb

-Duck Warrior-
Modérateur
Club MacG
18 Octobre 2001
13 538
1 556
Angoulême
On pourrait aussi faire un script de dossier. À chaque fois qu’on dépose un dossier dans le dossier « magique » ça crée à l’intérieur l’arborescence.
 

AnaïsG

Nouveau membre
28 Février 2018
5
0
25
Voila le script modifié avec gcr et mails
Bloc de code:
display dialog "Entrer le nom du dossier à créer: " default answer "Dossier"
set lenom to text returned of result

tell application "Finder"
    set lenom to lenom as string
    set chemin to (path to desktop folder) as string
    set chemin2 to chemin & lenom as string
    set chemin3 to chemin2 & ":ELEMENTS" as string
  
    make new folder at chemin with properties {name:lenom}
    make new folder at chemin2 with properties {name:"IMAGES"}
    make new folder at chemin2 with properties {name:"ORIGINAUX"}
    make new folder at chemin2 with properties {name:"ELEMENTS"}
    make new folder at chemin2 with properties {name:"VALIDATIONS"}
    make new folder at chemin3 with properties {name:"GCR"}
    make new folder at chemin3 with properties {name:"MAILS"}
end tell

Parfait, c'est exactement ce que je cherchais. En plus j'ai compris l'écriture du script donc si je dois faire des modifications, je pourrais le faire moi même.
Merci à tous :)