J'ai besoin de trouver un dossier imbriqué dans un dossier.
exemple :
/Volumes/"4T Virtual Machines"/outerfolder/innerfolder
mac $ pwd
/Volumes/4T Virtual Machines
mac $ ls -lR outerfolder/
total 0
-rw-r--r-- 1 mac staff 0B Aug 28 18:02 file1
-rw-r--r-- 1 mac staff 0B Aug 28 18:02 file2
drwxr-xr-x 5 mac staff 170B Aug 28 18:04 innerfolder/
drwxr-xr-x 3 mac staff 102B Aug 28 18:07 otherfolder/
outerfolder//innerfolder:
total 0
-rw-r--r-- 1 mac staff 0B Aug 28 18:04 aaa
-rw-r--r-- 1 mac staff 0B Aug 28 18:04 bbb
-rw-r--r-- 1 mac staff 0B Aug 28 18:04 ccc
outerfolder//otherfolder:
total 0
-rw-r--r-- 1 mac staff 0B Aug 28 18:07 justskip
mac $
Prenons deux cas : le dossier externe est à la racine du disque externe et le dossier externe n'est pas à la racine du disque externe. Je devrais être capable de modifier une solution pour l'autre.
J'écris en applescript sur MacOS yosemite ou ultérieur, mais j'invoque potentiellement une commande Unix depuis applescript. La solution peut donc être dans tout applescript ou dans une commande Unix appelée depuis applescript. L'approche de la commande Unix
Voici la commande Unix que j'utilise pour trouver le dossier externe :
find /Volumes -type d -maxdepth 1 ! -name Volumes -exec find {} -type d -maxdepth 1 -name "Virtual Box" \;
J'ai essayé une troisième recherche imbriquée, mais je me suis trompé
find /Volumes -type d -maxdepth 1 ! -name Volumes -exec find {} -type d -maxdepth 1 -name "Virtual Box" -exec find {} -type d -maxdepth 1 ! -name inner \;
find: -exec: no terminating ";" or "+"
find: -exec: no terminating ";" or "+"
find: -exec: no terminating ";" or "+"
mac RC=1 $