Comment scinder un dossier de 30Go et 12000 fichiers ?

Le
Jean-Luc Courtois
Salut à tous,

Pas taper ;-)

J'ai récupéré un dossiers de cartes topos sous la forme d'une archive
qui dézippée donne un dossier gigantesque, et je me heurte à une limite
jamais rencontrée sur mes Macs

J'ai mis le dossier dans la machine la plus véloce à laquelle je puis
avoir accès : un MacBook pro late 2007 sous SL.

Dès que je tente la moindre manipulation de ce dossier (à part
l'ouverture ou la fermeture), tris différents, sélection multiple, etc.
je suis figé pendant plusieurs minutes avec la roue colorée :-(

J'ai entrepris de créer un sous dossier A (ailleurs sur le DD), pour
commencer à sortir le début de la liste, mais ce n'est visiblement pas
la solution, même pour bouger un fichier c'est la galère.

À côté de ça, l'ouverture à partir d'une application, ou une recherche
spotlight, ne pose aucun souci

Que puis-je espérer pour progresser ?

Merci pour votre aide ;-)

Jean-Luc
--
Pour me répondre, pas de code postal dans l'adèle.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Laszlo Lebrun
Le #24084241
On 18.12.11 13:56, Jean-Luc Courtois wrote:
Salut à tous,

Pas taper ;-)

J'ai récupéré un dossiers de cartes topos sous la forme d'une archive
qui dézippée donne un dossier gigantesque, et je me heurte à une limite
jamais rencontrée sur mes Macs...

J'ai mis le dossier dans la machine la plus véloce à laquelle je puis
avoir accès : un MacBook pro late 2007 sous SL.

Dès que je tente la moindre manipulation de ce dossier (à part
l'ouverture ou la fermeture), tris différents, sélection multiple, etc.
je suis figé pendant plusieurs minutes avec la roue colorée :-(

J'ai entrepris de créer un sous dossier A (ailleurs sur le DD), pour
commencer à sortir le début de la liste, mais ce n'est visiblement pas
la solution, même pour bouger un fichier c'est la galère.

À côté de ça, l'ouverture à partir d'une application, ou une recherche
spotlight, ne pose aucun souci...

Que puis-je espérer pour progresser ?

Merci pour votre aide ;-)

Jean-Luc



J'essaierais avec Terminal. creer environ 50 sous-dossiers, puis
commande mv pour y déplacer les fichiers correspondant aux "wildcards"
que tu auras judicieusement choisi en fonction des noms de fichiers...

Terminal ne passe pas tout son temps à afficher une liste de résultats à
chaque commande...




--
One computer and three operating systems, not the other way round.
One wife and many hotels, not the other way round ! ;-)
patpro ~ patrick proniewski
Le #24084321
In article Jean-Luc Courtois
Salut à tous,

Pas taper ;-)

J'ai récupéré un dossiers de cartes topos sous la forme d'une archive
qui dézippée donne un dossier gigantesque, et je me heurte à une limite
jamais rencontrée sur mes Macs...

J'ai mis le dossier dans la machine la plus véloce à laquelle je puis
avoir accès : un MacBook pro late 2007 sous SL.

Dès que je tente la moindre manipulation de ce dossier (à part
l'ouverture ou la fermeture), tris différents, sélection multiple, etc.
je suis figé pendant plusieurs minutes avec la roue colorée :-(

J'ai entrepris de créer un sous dossier A (ailleurs sur le DD), pour
commencer à sortir le début de la liste, mais ce n'est visiblement pas
la solution, même pour bouger un fichier c'est la galère.

À côté de ça, l'ouverture à partir d'une application, ou une recherche
spotlight, ne pose aucun souci...

Que puis-je espérer pour progresser ?



tu pourrais créer par un script une série de sous-dossiers dans les
quels tu déplacerais (toujours via le script) des paquets de fichiers.
Je ne sais pas si tes noms de fichiers correspondent à une nomenclature,
il y a peut être un tri logique à faire à ce niveau.

patpro

--
A vendre : KVM IP 16 ports APC
http://patpro.net/blog/index.php/2008/01/12/133
Jean-Luc Courtois
Le #24084611
Le 18/12/11 15:16, patpro ~ patrick proniewski a écrit :

Merci pour vos rapides réponses.

Pour le Terminal, je n'applique que des recettes toutes faites vu ma
pratique de l'outil...
mv est une commande a priori, et les wilcards, une façon de compléter
les noms, mais je ne connais pas la syntaxe.

Pour les scripts, je pratique encore moins, enfin, j'applique des tout
faits :-)

Mon giga dossier est constitué d'environ 6000 noms de communes avec 2
fichiers de nom identique (la commune) avec 2 extensions différentes :
une image (png) et un fichier de géoréférencement (.map) soit 12000 en
tout, et j'ai évidemment besoin des couples au même endroit.

Ce que je souhaiterais faire c'est une vingtaine de dossiers dans un
premier temps, correspondants à l'ordre alphabétiques. J'ai presque fini
manuellement le dossier A, mais je vais m'arrêter là, c'était juste une
expérience de dingue !

--
Pour me répondre, pas de code postal dans l'adèle.
Michael
Le #24084751
Que puis-je espérer pour progresser ?



Si tu peux faire des sous - dossiers, essaie The big mean foldermachine
qui est un excellent produit :

patpro ~ patrick proniewski
Le #24085011
In article Jean-Luc Courtois
Le 18/12/11 15:16, patpro ~ patrick proniewski a écrit :

Merci pour vos rapides réponses.

Pour le Terminal, je n'applique que des recettes toutes faites vu ma
pratique de l'outil...
mv est une commande a priori, et les wilcards, une façon de compléter
les noms, mais je ne connais pas la syntaxe.

Pour les scripts, je pratique encore moins, enfin, j'applique des tout
faits :-)

Mon giga dossier est constitué d'environ 6000 noms de communes avec 2
fichiers de nom identique (la commune) avec 2 extensions différentes :
une image (png) et un fichier de géoréférencement (.map) soit 12000 en
tout, et j'ai évidemment besoin des couples au même endroit.

Ce que je souhaiterais faire c'est une vingtaine de dossiers dans un
premier temps, correspondants à l'ordre alphabétiques. J'ai presque fini
manuellement le dossier A, mais je vais m'arrêter là, c'était juste une
expérience de dingue !



dans le terminal :

cd (là tu drag&drop ton dossier)
mkdir {A..Z}
for i in {A..Z}; do
find . -iname "${i}*" -type f -exec mv {} $i ;
done

et ça devrait être bon... :) (mais j'ai pas testé)


patpro

--
A vendre : KVM IP 16 ports APC
http://patpro.net/blog/index.php/2008/01/12/133
Jean-Luc Courtois
Le #24085301
Le 18/12/11 16:55, patpro ~ patrick proniewski a écrit :

dans le terminal :

cd (là tu drag&drop ton dossier)
mkdir {A..Z}
for i in {A..Z}; do
find . -iname "${i}*" -type f -exec mv {} $i ;
done

et ça devrait être bon... :) (mais j'ai pas testé)



Merci pour la recette et le temps passé, j'ai essayé, c'est parti, mais
j'ai arrêté alors que le Terminal me demandait l'autorisation d'écraser
le dossier A existant (celui que j'ai passé un moment à réaliser), et il
avait déjà créé les autres.

Par contre, j'ai remarqué que la lourdeur s'est considérablement
atténuée depuis que j'ai sorti environ 10% des fichiers, et ça
s'améliore au fur et à mesure, je profite de cette opération manuelle
pour répartir mes communes équitablement ce qui ne se fait évidemment
pas par lettre, je ne pensais pas à une telle différence (2500 L, 20 K !)

Je referai cette manip du terminal sur ma sauvegarde sur un DD externe
après en avoir fini sur l'interne :-)

J'ai pas compris comment c'est revenu gérable, ça fait 3 jours que
j'essaie de progresser, d'un coup le Finder se réveille ?
J'avais vérifié les opérations en cours dans le Moniteur d'activité sans
déceler ce qui restait collé...

Je ne vais pas faire ça tous les jours, mais au moins j'ai une recette
de plus ;-)

--
Pour me répondre, pas de code postal dans l'adèle.
patpro ~ patrick proniewski
Le #24085391
In article Jean-Luc Courtois
Le 18/12/11 16:55, patpro ~ patrick proniewski a écrit :

> dans le terminal :
>
> cd (là tu drag&drop ton dossier)
> mkdir {A..Z}
> for i in {A..Z}; do
> find . -iname "${i}*" -type f -exec mv {} $i ;
> done
>
> et ça devrait être bon... :) (mais j'ai pas testé)

Merci pour la recette et le temps passé, j'ai essayé, c'est parti, mais
j'ai arrêté alors que le Terminal me demandait l'autorisation d'écraser
le dossier A existant (celui que j'ai passé un moment à réaliser), et il
avait déjà créé les autres.



oui, le mkdir crée tous les répertoires en une fois

Par contre, j'ai remarqué que la lourdeur s'est considérablement
atténuée depuis que j'ai sorti environ 10% des fichiers, et ça
s'améliore au fur et à mesure,



c'est normal


patpro

--
A vendre : KVM IP 16 ports APC
http://patpro.net/blog/index.php/2008/01/12/133
blanc
Le #24086811
Jean-Luc Courtois
Merci pour la recette et le temps passé, j'ai essayé, c'est parti, mais
j'ai arrêté alors que le Terminal me demandait l'autorisation d'écraser
le dossier A existant (celui que j'ai passé un moment à réaliser),



Pour éviter cela, il suffit de remplacer dans la commandecomposée donnée
par patpro {A..Z} par {B..Z}

Par contre patpro a oublier de préciser que cette commande marche
lorsqu'on est en shell bash. Il a présumé avec raison que tu n'avais pas
modifié le shell par défaut.

Pour bien comprendre la commande en question, un exemple plus simple :

for i in {W..Z}; do echo $i; done

cela donne :

W
X
Y
Z

Dans la commande donnée par patpro, il y a aussi :

find . -iname "${i}*" -type f -exec mv {} $i ;

qui va trouver tous les fichiers dont le nom commence par la lettre
donnée par la variable i ( ${i}* ) et qui sont de type f (fichier
régulier)
et les déplace dans le bon dossier ( -exec mv {} $i ; )

et au début il y a :
cd pour changer le dossier courant
et mkdir pour créer les dossiers ayant les noms adequat
--
JiPaul.
/ /--/--//\ Jean-Paul Blanc
|/| L |\ quelquepart en (somewhere in)
/|| = |||\ FRANCE
patpro ~ patrick proniewski
Le #24087131
In article (JiPaul) wrote:

Dans la commande donnée par patpro, il y a aussi :

find . -iname "${i}*" -type f -exec mv {} $i ;



d'ailleurs j'aurai du mettre :

find . -iname "${i}*" -type f -exec mv "{}" $i ;

c'est plus prudent.

patpro

--
A vendre : KVM IP 16 ports APC
http://patpro.net/blog/index.php/2008/01/12/133
Jean-Luc Courtois
Le #24087451
Merci pour ces précisions ;-)

Je n'avais pas besoin d'être convaincu que le Terminal est la meilleure
boîte à outil !
Je suis partisan du moindre effort, j'ai tendance à préférer utiliser
que concevoir, mais j'ai la curiosité de chercher à comprendre ce que je
fais. Donc me voilà simplement plus instruit.

Cela dit, même en tant qu'utilisateur, j'arrive à improviser pour
progresser sans oser vos lignes de geek, le besoin crée la solution :-)

Dans la suite de cette manip, j'ai réussi non sans mal, à extraire un
listing de mes quelques 6.000 communes références grâce à Listerfolder
(basique et efficace), Print window, séduisant au départ, ne fait
simplement pas ce qu'il prétend : impression pdf des noms classée par
type de fichiers pour ne pas récupérer 2 fois le même nom avec
l'extension différente et rallonger ma liste d'autant.

Je suis évidemment certain qu'un tour de passe passe dans le Terminal
avec un oeil bandé et une main attachée dans le dos aurait donné une
solution plus rapide, ce sera pour une autre fois...

Jean-Luc - apprenti alchimiste

--
Pour me répondre, pas de code postal dans l'adèle.
Publicité
Poster une réponse
Anonyme