Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 15/01/2020, à 18:06

Armannick

Dossier volumineux impossible à gérer (Résolu)

Bonjour, je suis débutante sur Ubuntu. Je n'ai plus du tout de Windows et ne fonctionne que sur Linux 18.04 LTS Ubuntu.
Mon gestionnaire de fichiers: Nautilus.
J'ai un dossier : ma bibliothèque où je possède environ quelques fichiers epub classé par ordre alphabétique, nom d'auteur.
Ce dossier est très long à ouvrir et il est très difficile de naviguer à l'intérieur, voire impossible car il plante.
Je voulais le compartimenter en sous-dossier mais cette opération n'est pas possible car il plante.
Pouvez-vous m'apporter de l'aide s'il vous plaît ? Merci

Dernière modification par Armannick (Le 18/01/2020, à 11:53)

Hors ligne

#2 Le 15/01/2020, à 19:22

abelthorne

Re : Dossier volumineux impossible à gérer (Résolu)

Tu peux éventuellement faire un tri dans un premier temps en ligne de commande. Créer des dossiers de A à Z et déplacer tous les epubs qui commencent par "a" dans A, par "b" dans B, etc.

Quel est le chemin exact de ta bibliothèque ?

Hors ligne

#3 Le 15/01/2020, à 19:57

Sciensous

Re : Dossier volumineux impossible à gérer (Résolu)

ça peut venir aussi de nautils; essaye une gestionnaire de fichier très léger comme X File Explorer
sinon ce sera en ligne de commande en effet


antiX 19 et 21 et Ubuntu 20.04 et 22.04
( sous LXDE et gnome-shell )

Hors ligne

#4 Le 15/01/2020, à 22:02

Armannick

Re : Dossier volumineux impossible à gérer (Résolu)

@Alberthone : le chemin est /home/documents/bibliothèque
Merci de ton aide ? Par contre pour les lignes de commande va falloir que je mette le nez dans le manuel car je ne sais pas encore faire.

Hors ligne

#5 Le 15/01/2020, à 22:04

Armannick

Re : Dossier volumineux impossible à gérer (Résolu)

Sciensous ,: je vais regarder ce gestionnaire de fichiers mais il est vrai qu'avant de l'installer j'aimerais m'assurer qu'il fait le job.
Merci pour ta réponse.

Hors ligne

#6 Le 15/01/2020, à 22:12

abelthorne

Re : Dossier volumineux impossible à gérer (Résolu)

Armannick a écrit :

@Alberthone : le chemin est /home/documents/bibliothèque
Merci de ton aide ? Par contre pour les lignes de commande va falloir que je mette le nez dans le manuel car je ne sais pas encore faire.

Pas de souci, on va voir ça en détail. Tout d'abord, pour te placer dans un dossier, c'est la commande cd. Mais "documents", c'est le nom du compte, ou tu parles du dossier Documents (avec un D majuscule, c'est important sur Linux, "documents" et "Documents" désignent deux dossiers différents) ?
Si le chemin est bon, tu taperais ça pour t'y placer :

cd /home/documents/bibliothèque

mais si c'est bien Documents et que ton dossier perso est par exemple /home/armannick, ce serait plutôt :

cd /home/armannick/Documents/bibliothèque

Avant d'aller plus loin, confirme-moi si le chemin est bon ou redonne celui qui est correct.

Hors ligne

#7 Le 15/01/2020, à 22:23

Armannick

Re : Dossier volumineux impossible à gérer (Résolu)

Je viens de taper :
cd /home/documents/bibliothèque
 
et j'ai comme message :
bash: cd: trop d'arguments

Je suis un peu gênée que tu te déranges aussi tard dans la soirée roll

Dernière modification par Armannick (Le 15/01/2020, à 22:24)

Hors ligne

#8 Le 15/01/2020, à 22:27

abelthorne

Re : Dossier volumineux impossible à gérer (Résolu)

S'il met "trop d'arguments", c'est vraisemblablement que tu as mis des espaces où il ne faut pas. Attention à bien respecter la syntaxe, c'est extrêmement important en ligne de commande (des espaces mal placées peuvent entraîner des catastrophes avec certaines commandes, si tu veux effacer un fichier par exemple).

Pour être sûr du nom de ton dossier perso, donne-moi le retour de la commande suivante :

echo $HOME

Hors ligne

#9 Le 15/01/2020, à 22:29

Armannick

Re : Dossier volumineux impossible à gérer (Résolu)

/home/armannick

Dernière modification par Armannick (Le 17/01/2020, à 15:04)

Hors ligne

#10 Le 15/01/2020, à 22:33

abelthorne

Re : Dossier volumineux impossible à gérer (Résolu)

Ok, donc c'est bien le dossier "Documents" (pas "documents") dans ton dossier perso. La commande sera donc :

cd /home/annick/Documents/bibliothèque

Si le chemin est bon, l'invite au début de la ligne devrait devenir quelque chose comme ça :
annick@machin:~/Documents/bibliothèque (je mets "machin" pour le nom de la machine parce que je ne la connais pas mais ce n'est pas très important, c'est ce qu'il y a après qui nous intéresse.)
Confirme-moi que c'est le cas, c'est pour être sûr que le dossier s'appelle bien "bibliothèque" et pas "Bibliothèque" par exemple.

Hors ligne

#11 Le 15/01/2020, à 22:39

Armannick

Re : Dossier volumineux impossible à gérer (Résolu)

Bon ben tu es en train de mettre le doigt où ça fait mal ! Il va falloir que je fasse très attention avec les maj et les minuscules.
Donc Bibliothèque est avec un B maj.
Et du coup en reprenant ta ligne de commande :
cd /home/armannick/Documents/Bibliothèque
(avec le B maj)

PC:~/Documents/Bibliothèque$

Dernière modification par Armannick (Le 17/01/2020, à 15:05)

Hors ligne

#12 Le 15/01/2020, à 22:52

abelthorne

Re : Dossier volumineux impossible à gérer (Résolu)

Très bien. Donc, attention aux majuscules, effectivement. wink

Donc, là, l'invite dit que tu es dans le dossier ~/Documents/Bibliothèque (~ étant un raccourci pour ton dossier perso, /home/annick). Si tu fermes le terminal et que tu le rouvres (ou que tu en ouvres un autre), tu devras à nouveau te placer au bon endroit ; je précise au cas où tu fasses la suite en plusieurs étapes, demain, etc.

L'idée, ça va être de créer des dossiers de A à Z et de déplacer tous les epubs qui commencent par chaque lettre dedans.

Pour créer des dossiers, on utilise la commande mkdir. En étant placée dans ~/Documents/Bibliothèque, tu peux créer ces dossiers :

mkdir a b c d e f g h i j k l m n o p q r s t u v w x y z

Ensuite, pour déplacer des fichiers, on utilise la commande mv. Pour déplacer tous les epubs qui commencent par "A" ou "a" dans le dossier "a" qu'on vient de créer, tu vas utiliser :

mv A*.epub a*.epub a

L'étoile est ce qu'on appelle un joker, elle remplace n'importe quelle chaîne de caractères. La commande va déplacer tous les fichiers qui commencent par "A" et finissent par ".epub", ainsi que tous ceux qui commencent par "a" et finissent par ".epub" dans le dossier "a".

Ensuite, tu fais pareil avec les autres lettres :

mv B*.epub b*.epub b
mv C*.epub c*.epub c

etc. jusqu'à Z.

Une fois que c'est fait, tu peux repasser au navigateur de fichiers et commencer à trier le contenu des 26 nouveaux dossiers qu'il y a dans ton dossier Bibliothèque. Certains dossiers auront peut-être encore trop de fichiers pour être manipulables (j'imagine que si ce sont des titres de bouquins, il y en a beaucoup plus qui commencent par un L ou un T que, disons, par un Z) mais si c'est le cas, on refera le même genre de manip en plus détaillée. Cette première étape devrait au moins te permettre de commencer à faire du tri.

Dernière modification par abelthorne (Le 15/01/2020, à 22:53)

Hors ligne

#13 Le 15/01/2020, à 23:05

Armannick

Re : Dossier volumineux impossible à gérer (Résolu)

En étant bien dans : /home/annick/Documents/Bibliothèque
Je viens de taper ta ligne de commande :
mkdir a b c d e f g h i j k l m n o p q r s t u v w x y z
Et super smile je me retrouve bien avec les dossiers créés. (super bien expliqué, merci +++)

Par contre quand j'essaie de déplacer les fichiers, je n'y arrive pas, et pourtant ta ligne de commande est bonne. Mais je viens de comprendre qu'il ne trouve pas les fichiers car ils sont dans /home/annick/Documents/Bibliothèque/Ma bibliothèque
Sauf que quand je reprends la procédure du début pour être dans le bon dossier en rajoutant : Ma bibliothèque
J'ai à nouveau le message :
bash: cd: trop d'arguments

Aïe du coup je ne sais pas comment faire ?

Hors ligne

#14 Le 15/01/2020, à 23:16

abelthorne

Re : Dossier volumineux impossible à gérer (Résolu)

C'est normal : je ne l'avais pas précisé parce qu'on n'était a priori pas dans ce cas de figure mais en ligne de commande, l'espace sert à délimiter les options/arguments d'une commande ; et donc, quand il y en a dans un nom de fichier, ça pose problème. Si tu tapes la commande cd Ma bibliothèque, la commande cd va considérer que tu veux te déplacer dans un dossier "Ma" et dans un dossier "bibliothèque". Et non seulement ils n'existent pas mais en plus on ne peut pas se déplacer dans deux dossiers à la fois, d'où le "trop d'arguments", cd n'en attendant qu'un.

Pour utiliser des fichiers dont le nom contient des espaces (ou d'autres caractères spéciaux) en ligne de commande, on doit préciser que ces derniers ne doivent pas être interprétés comme faisant partie de la commande mais comme faisant partie du nom. On a deux possibilité pour ça : soit on les précède d'un antislash (\), soit on met le chemin complet entre guillemets. Pour aller dans ton dossier, tu peux utiliser l'une des deux commandes suivantes, elles sont équivalentes  :

cd /home/annick/Documents/Bibliothèque/Ma\ bibliothèque
cd "/home/annick/Documents/Bibliothèque/Ma bibliothèque"

Une petite précision au cas où (mais on commence à aborder la syntaxe avancée) : quand on met le chemin entre guillemets, on ne peut pas utiliser ~ comme raccourci pour le dossier perso (le shell chercherait un dossier qui s'appelle "~" au lieu de le remplacer par le bon chemin). La commande suivante ne fonctionnerait pas :

cd "~/Documents/Bibliothèque/Ma bibliothèque"

En revanche, pas de problème avec les antislashes, celle-ci fonctionnerait :

cd ~/Documents/Bibliothèque/Ma\ bibliothèque

Hors ligne

#15 Le 15/01/2020, à 23:27

Armannick

Re : Dossier volumineux impossible à gérer (Résolu)

Waouh ! j'ai tout compris abelthorne, ça marche (je crie derrière mon ordi, heureusement que tu ne m'entends pas lol )
Tu expliques trop bien !!!
J'ai fait la ligne de commande :
cd /home/annick/Documents/Bibliothèque/Ma\ bibliothèque

Et c'est nickel, je suis dans le bon dossier. Et demain je tape ce que tu m'as dit précédemment ;
mv A*.epub a*.epub a
Et ainsi de suite et je vais avoir une bibliothèque accessible et bien rangé grâce à toi. Et en plus j'ai appris des lignes de commande.
Merci pour ton aide xxl, on ne peut plus claire smile:):) C'est vraiment très très sympa ! Bonne soirée ou devrais-je dire : Bonne nuit !

Hors ligne

#16 Le 15/01/2020, à 23:34

abelthorne

Re : Dossier volumineux impossible à gérer (Résolu)

Une dernière chose : le nom "Ma bibliothèque" me fait penser que tu utilises peut-être Calibre pour gérer tes epubs. Est-ce que c'est le cas ? Parce que si ça l'est, ça va poser problème, étant donné qu'il attend ses fichiers à l'endroit où il les range (si tu les déplaces, il ne les retrouvera pas). Mais d'un autre côté, comme il est censé les ranger par auteur dans des sous-dossiers dédiés, je suppose qu'il n'y en aurait pas 10000, donc je ne sais pas si mon hypothèse tient l'eau.

EDIT : et surtout, dans tous les cas, avant de taper les commandes mv, sois bien sûre d'avoir créé les dossiers a à z au bon endroit, dans "Ma bibliothèque" (ou de les avoir déplacés là si tu les as créés dans Bibliothèque). Dans le cas contraire, la commande va renommer les fichiers avec un seul nom et au final, tu vas tout perdre. Faire très attention à ce détail. Si tu as le moindre doute, il faudrait plutôt utiliser la commande cp au lieu de mv (pour les copier) et une fois que tu es sûre d'avoir les doublons dans les dossiers a à z, supprimer les originaux. Bref, si tu n'es pas sûre de toi, dis-le moi et on verra ça en détail, en vérifiant tout à chaque étape.

Dernière modification par abelthorne (Le 15/01/2020, à 23:41)

Hors ligne

#17 Le 16/01/2020, à 09:40

Sciensous

Re : Dossier volumineux impossible à gérer (Résolu)

mon avis: dans ce cas je préfère ln à cp puisqu'il s'agit de beaucoup de fichiers
la commande pourrait donc être:
Et faire un triple clic souris sur la ligne pour tout sélectionner/copier pour éviter les fautes de frappe

d="$HOME/Documents/Bibliothèque/Ma bibliothèque"; for x in a b c d e f g h i j k l m n o p q r s t u v w x y z;do echo "$x en cours"; mkdir -p "$d/$x"; y=$(echo "$x"|tr '[a-z]' '[A-Z]');ln "$d"/[$x$y]*.epub "$d/$x"; done

cool

Édit: modification de la partie ln qui mettait que les fichiers commençant par a ou A !!

Dernière modification par Sciensous (Le 16/01/2020, à 18:14)


antiX 19 et 21 et Ubuntu 20.04 et 22.04
( sous LXDE et gnome-shell )

Hors ligne

#18 Le 16/01/2020, à 10:15

abelthorne

Re : Dossier volumineux impossible à gérer (Résolu)

Et ça ne va pas poser problème au lien que va faire ln si on efface le fichier d'origine ? Je n'en ai jamais beaucoup utilisé hormis des liens symboliques.

C'est vrai qu'il y a beaucoup de fichiers mais comme on les trie par initiale, ça ne devrait pas vraiment poser de problème pour une copie, surtout si on efface les originaux au fur et à mesure (après la copie de chaque lettre).

Hors ligne

#19 Le 16/01/2020, à 10:25

Sciensous

Re : Dossier volumineux impossible à gérer (Résolu)

c'est justement tout l'intérêt du lien en dur: les différentes "copies" (liens) pointent tous vers un même fichier; en effacer 1 n'efface que le lien pas le fichier; ce n'est qu'en effaçant le dernier lien que le fichier est réellement effacé
Dit autrement: en faisant un ln puis en effaçant l'original ça revient à faire une copie en 2 étapes wink

C'est donc plus sûr que le rm direct puisque les originaux sont toujours là et ne prend pas de place contrairement à cp


Autre avantage: tu modifies le fichier via un lien et il est modifié pour tous les liens (puisque pointent vers un seul et même fichier)
Inconvénient: il faut être toujours dans la même partition disque

C'est pour cette raison que je préfère le lien dur à la copie: tu peux effacer ou renommer les liens comme tu veux tat qu'il en reste au moins 1.
Info supp: pour rechercher les liens en dur d'un fichier: "find -samefile"

Dernière modification par Sciensous (Le 16/01/2020, à 10:28)


antiX 19 et 21 et Ubuntu 20.04 et 22.04
( sous LXDE et gnome-shell )

Hors ligne

#20 Le 16/01/2020, à 16:11

erresse

Re : Dossier volumineux impossible à gérer (Résolu)

@abelthorne: Quel est ton postulat de départ pour résoudre le problème ? Est-ce que 10000 fichiers dans un répertoire, c'est trop d'inodes à gérer ? Dans ce cas, les ventiler dans des sous-répertoires va être OK, mais si c'est une question de volume, ça ne résoudra pas le souci...
Qu'en penses-tu ?
Et par ailleurs, Armannick n'a pas répondu à ta question sur le logiciel qui gère ces fichiers, ce qui laisse entier le problème de les retrouver après les avoir déplacés (quelle que soit la méthode de déplacement).
@Sciensous: Pas bête ton idée d'utiliser les liens physiques pour simuler un déplacement, je n'y avais pas pensé... smile
@MicP: Que veux-tu dire par ce message ? La commande de Sciensous ne fait pas juste un "echo", elle crée aussi les sous-répertoires...


Plus de 50 ans d'informatique, ça en fait des lignes de commandes en console, mais on n'avait pas le choix...
Excellente raison pour, aujourd'hui qu'on le peut, utiliser au maximum les INTERFACES GRAPHIQUES !
Important : Une fois résolu, pensez à clore votre sujet en ajoutant [Résolu] devant le titre du 1er message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci.

Hors ligne

#21 Le 16/01/2020, à 17:52

Armannick

Re : Dossier volumineux impossible à gérer (Résolu)

Je vous lis tous très attentivement et si jusqu'à hier soir je comprenais les lignes de commande ainsi que ses conséquences, là je commence à me perdre. Désolée mais je viens juste d'installer Ubuntu et je veux y aller pas à pas mais surtout en comprenant ce que je fais.

@Sciensous : j'ai compris l'idée de liens mais quand je lis ta ligne de commande, je ne comprends pas ce qu'elle va faire. Dans l'exemple d'Abelthorne, je sélectionnais tous les auteurs dont le nom débutait par la lettre A ou a et les fichiers epubs étaient transférés respectivement dans leurs dossiers a puis b puis c et ainsi de suite. A vrai dire je ne crains pas la perte de ce gros dossier car je l'ai en sauvegarde sur mon DDE.
@MicP : Je n'ai rien compris sad

@Abelthorne : non je n'utilise plus Callibre pour gérer ma bibliothèque pour les raisons que tu cites : Calibre crée ses propres dossiers qui sont classés selon ses principes. Si tu touches ces dossiers-là c'est le bordel dans ta Calibre. Tu peux ranger uniquement par l'intermédiaire de Calibre et pour 10 000 epubs il aurait fallu créer plusieurs bibliothèques pour que cela soit gérable. Et puis j'ai cette impression (peut-être fausse) que je ne suis pas maître chez moi. C'est d'ailleurs un peu (beaucoup) pour ça que j'ai quitté définitivement Windows.
Et pourtant repartir de zéro, ce n'est pas facile, la preuve lol

Merci grandement à tous pour votre aide. Je vais débuter la méthode d'Abelthorne, petit pas par petit pas wink

Hors ligne

#22 Le 16/01/2020, à 18:04

Armannick

Re : Dossier volumineux impossible à gérer (Résolu)

Je viens d'exécuter la première commande après avoir créé tous mes dossiers : a, b, c, d etc...

  mv A*.epub a*.epub a    

Mais j'ai cette réponse !?

  mv: la cible 'a' n'est pas un répertoire   

Dois-je comprendre répertoire = dossier ? Pourtant ce sont bien des dossiers qui ont été créés. Je cale...

Hors ligne

#23 Le 16/01/2020, à 18:08

erresse

Re : Dossier volumineux impossible à gérer (Résolu)

Tu comprends les explications simples d'abelthorne qui t'a détaillé pas à pas le cheminement de l'opération, mais la ligne de commande donnée par Sciensous n'est pas UNE commande, c'est tout un programme sur une seule ligne, c'est pour cela que tu ne comprends pas.
En fait, cela fait la même chose que te suggérais abelthorne, mais en utilisant une boucle "for" pour la création de chaque sous-répertoire et la "copie" (en fait la création d'un lien physique) des fichiers dans le sous-répertoire créé.

d="$HOME/Documents/Bibliothèque/Ma bibliothèque";
for x in a b c d e f g h i j k l m n o p q r s t u v w x y z
do echo "$x en cours"
     mkdir -p "$d/$x"
     ln "$d"/[aA]*.epub "$d/$x"
done

Voilà comment tu peux mieux comprendre la série de commandes de cette ligne.
De plus, la notation "[aA]*.epub" est un abrégé pour dire "ce qui commande par 'a' ou par 'A'", donc équivalent à "a*.epub A*.epub"...
Et on note que tu n'utilises pas Calibre, donc, on peut donc déplacer les fichiers librement, OK.

Edit: Pour ton problème, on aurait besoin de savoir dans quel répertoire tu te trouves lorsque tu exécutes les commandes.
Pour cela, un retour de commande doit être donné sous la forme :

prompt:~$ la commande
les lignes
de retour
de la commande
prompt:~$

Et oui, un répertoire et un dossier, c'est la même chose, sauf qu'un dossier, normalement, c'est un truc en carton ou en ferraille dans lequel on classe les documents sur papier... tongue

Dernière modification par erresse (Le 16/01/2020, à 18:14)


Plus de 50 ans d'informatique, ça en fait des lignes de commandes en console, mais on n'avait pas le choix...
Excellente raison pour, aujourd'hui qu'on le peut, utiliser au maximum les INTERFACES GRAPHIQUES !
Important : Une fois résolu, pensez à clore votre sujet en ajoutant [Résolu] devant le titre du 1er message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci.

Hors ligne

#24 Le 16/01/2020, à 18:10

Sciensous

Re : Dossier volumineux impossible à gérer (Résolu)

/!\ ERREUR /!\
en rédigeant l'explication de mes commandes j'ai vu une belle coquille:
ln "$d"/[aA]*.epub "$d/$x" ne marchera pas !!!

donc j'édite mon post précédent
--------------------
la suite est l'explication:
--------------------
je détaille donc:
je définit une variable contenant le dossier des tes fichiers

d="$HOME/Documents/Bibliothèque/Ma bibliothèque";

je fais varier une autre variable qui prendra successivement comme valeurs a, b, c,...,z

 for x in a b c d e f g h i j k l m n o p q r s t u v w x y z;

Ce que je fais à chaque valeur de x:

do

j'affiche juste le contenu de x (a puis b ...), juste pour savoir où on en est

 echo "$x en cours";

je créée le sous-dossier de la lettre s'il n'existe pas

 mkdir -p "$d/$x";

je fais la "copie" sans tenir compte de la casse de l'initiale du nom
(tr échange tout caractère dans le 1er crochet par celui correspondant au second crochet

 y=$(echo "$x"|tr '[a-z]' '[A-Z]');ln "$d"/[$x$y]*.epub "$d/$x"

indication de fin de boucle

 done

j'ai mis toutes les commandes sur une ligne pour que ce soit plus simple à copier/coller; dans ce cas on sépare les commandes par les ";"

pour ln: je mets des guillemets à cause des espaces éventuels dans les noms
[aA]* signifie que ne veux que les fichiers commençant par a ou A e finissant par .epub

Dernière modification par Sciensous (Le 16/01/2020, à 18:19)


antiX 19 et 21 et Ubuntu 20.04 et 22.04
( sous LXDE et gnome-shell )

Hors ligne

#25 Le 16/01/2020, à 18:16

Armannick

Re : Dossier volumineux impossible à gérer (Résolu)

@Erresse : bon je viens de lancer la commande de Sciensous (qui est un programme wink ) et il est noté à côté de a, b, c etc... : "en cours"
Dois-je comprendre qu'il est en train de travailler et de commencer le classement ?
Est-il possible de voir quelque part si il travaille ?

Dernière modification par Armannick (Le 16/01/2020, à 18:17)

Hors ligne