Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Bash, ext3 et gros repertoires

18 réponses
Avatar
Fabien LE LEZ
Bonjour,

J'ai deux répertoires -- appelons-les A et B -- qui contiennent pas
mal de fichiers.
J'aimerais transférer tout le contenu de A (y compris les
sous-répertoires et les fichiers dont le nom commence par un point)
dans B, en écrasant sans vergogne des fichiers de B en cas de conflit.

Y a-t-il un moyen simple de faire ça ?
On peut s'en sortir par un find+xargs, mais c'est un peu lourd, et je
me demandais s'il n'y avait pas une solution plus simple et élégante.

Bien sur, "mv * ../B/" ne fonctionne pas, à la fois à cause du grand
nombre de fichiers et de la présence de fichiers "cachés" (.*).


Par ailleurs, suite à une erreur de manipulation, je me suis retrouvé
avec un répertoire contenant quelque chose comme deux millions de
fichiers. Le répertoire lui-même représentait 65 Mo au lieu des 4 Ko
habituels pour un "petit répertoire" (chiffres obtenus en faisant
ls -l dans le répertoire parent).
Évidemment, toute action dans ce répertoire (ne serait-ce que vérifier
qu'un fichier y est présent) était affreusement lente.
Mais, en déplaçant la quasi-totalité des fichiers ailleurs (il n'en
restait plus qu'une dizaine), la taille du répertoire était toujours
aussi importante, et le temps de réaction également.
N'y a-t-il pas moyen de "compresser" ce répertoire, i.e. d'enlever les
"peaux mortes" dans sa structure ?
(La seule solution que j'aie trouvée est de transférer tous les
fichiers restants dans un autre répertoire, puis de supprimer
celui-là. Mais j'aimerais trouver mieux...)

Merci d'avance...

10 réponses

1 2
Avatar
Nicolas S.

Par ailleurs, suite à une erreur de manipulation,


Laquelle?

je me suis retrouvé
avec un répertoire contenant quelque chose comme deux millions de
fichiers. Le répertoire lui-même représentait 65 Mo au lieu des 4 Ko
habituels pour un "petit répertoire" (chiffres obtenus en faisant
ls -l dans le répertoire parent).

N'y a-t-il pas moyen de "compresser" ce répertoire, i.e. d'enlever les
"peaux mortes" dans sa structure ?


La seule solution est de supprimer/déplacer des fichiers.

(La seule solution que j'aie trouvée est de transférer tous les
fichiers restants dans un autre répertoire, puis de supprimer
celui-là. Mais j'aimerais trouver mieux...)


J'ai du mal à comprendre: "transférer" des fichiers "restants", tout ça
pour finalement les supprimer?

--
Nicolas S.

Avatar
Fabien LE LEZ
On Tue, 14 Aug 2007 19:50:20 +0200, "Nicolas S." :

N'y a-t-il pas moyen de "compresser" ce répertoire, i.e. d'enlever les
"peaux mortes" dans sa structure ?


La seule solution est de supprimer/déplacer des fichiers.


En d'autres termes, un répertoire qui a, un jour, contenu beaucoup de
fichiers, sera lent jusqu'à sa destruction ?

(La seule solution que j'aie trouvée est de transférer tous les
fichiers restants dans un autre répertoire, puis de supprimer
celui-là. Mais j'aimerais trouver mieux...)


J'ai du mal à comprendre: "transférer" des fichiers "restants", tout ça
pour finalement les supprimer?


Non, transférer les quelques fichiers qui s'y trouvent encore dans un
répertoire temporaire, supprimer le répertoire malade, puis créer un
nouveau répertoire avec le même nom, et y remettre les fichiers.


Avatar
Fabien LE LEZ
On Tue, 14 Aug 2007 19:50:20 +0200, "Nicolas S." :

Par ailleurs, suite à une erreur de manipulation,


Laquelle?


J'ai un script qui met des fichiers dans un répertoire, et un script
qui, la nuit, les traite puis les supprime. Il y a trois mois, j'ai
changé le nom du répertoire dans le premier script, mais j'ai oublié
de le faire dans le deuxième.


Avatar
ptilou
On 14 août, 19:59, Fabien LE LEZ wrote:
On Tue, 14 Aug 2007 19:50:20 +0200, "Nicolas S." :

Par ailleurs, suite à une erreur de manipulation,


Laquelle?


J'ai un script qui met des fichiers dans un répertoire, et un script
qui, la nuit, les traite puis les supprime. Il y a trois mois, j'ai
changé le nom du répertoire dans le premier script, mais j'ai oubli é
de le faire dans le deuxième.


mieux vaud une interface graphique et du clickodrome à ce niveau ...

Ptilou



Avatar
Pascal Hambourg
Salut,


J'ai un script qui met des fichiers dans un répertoire, et un script
qui, la nuit, les traite puis les supprime. Il y a trois mois, j'ai
changé le nom du répertoire dans le premier script, mais j'ai oublié
de le faire dans le deuxième.


mieux vaud une interface graphique et du clickodrome à ce niveau ...


Pas besoin. Un fichier de configuration commun suffit.


Avatar
Thierry B.
--{ ptilou a plopé ceci: }--

mieux vaud une interface graphique et du clickodrome à ce niveau ...



{ } PC-Tools
{ } Nautilus
{ } AK-47
{ } Obiwan Kenobi


--
Il n'y a pas de gestion des dependance dans la Slack, elle n'est pas
calamiteuse, elle n'existe pas.
C'est bien ce que je te dis. Elle est calamiteuse parce qu'elle n'existe pas

--{ JKB, in fcol.debats }--



Avatar
ptilou
On 15 août, 13:14, "Thierry B." wrote:
--{ ptilou a plopé ceci: }--

mieux vaud une interface graphique et du clickodrome à ce niveau ...


{* } PC-Tools
{* } Nautilus
{* } AK-47
{ *} Obiwan Kenobi



Je gagne quoi ?

Ptilou


Avatar
ptilou
On 15 août, 13:14, "Thierry B." wrote:
--{ ptilou a plopé ceci: }--

mieux vaud une interface graphique et du clickodrome à ce niveau ...


{* } PC-Tools
{* } Nautilus
{* } AK-47
{ *} Obiwan Kenobi



Je gagne quoi ?

Ptilou


Avatar
doug713705
Le jeudi 16 août 2007 17:43, ptilou s'est exprimé de la sorte sur
fr.comp.os.linux.debats :


Je gagne quoi ?


MMDTG

--
[ Plus ou moins avec une chance de peut-être ]
- Pour me contacter, enlever nospam (2X) -

Avatar
doug713705
Le jeudi 16 août 2007 17:43, ptilou s'est exprimé de la sorte sur
fr.comp.os.linux.debats :


Je gagne quoi ?


MMDTG

--
[ Plus ou moins avec une chance de peut-être ]
- Pour me contacter, enlever nospam (2X) -

1 2