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

Trouver les plus gros fichiers ou repertoires

48 réponses
Avatar
GP
Mots clés: Retrouver trouver retracer lister ls gros fichiers répertoires

Pour les répertoires:

du -Sk . | sort -nr | more

Pour les fichiers:

find . -printf "%k KB %h/%f\n" | sort +0nr | more

Mon petit problème est le suivant: où est-il dit que +0nr classe les fichiers
par ordre alphabétique après les avoir classés par grosseur? J'ai trouvé ça
sur le net, mais je ne trouve rien là-dessus dans les man pages.

GP

10 réponses

1 2 3 4 5
Avatar
Denis Beauregard
Le Fri, 28 Jan 2005 22:15:11 -0500, GP
écrivait dans fr.comp.os.linux.configuration:

Mots clés: Retrouver trouver retracer lister ls gros fichiers répertoires

Pour les répertoires:

du -Sk . | sort -nr | more

Pour les fichiers:

find . -printf "%k KB %h/%fn" | sort +0nr | more

Mon petit problème est le suivant: où est-il dit que +0nr classe les fichiers
par ordre alphabétique après les avoir classés par grosseur? J'ai trouvé ça
sur le net, mais je ne trouve rien là-dessus dans les man pages.


http://www.linux-france.org/article/man-fr/man1/sort-1.html

-n Comparer suivant la valeur arithmétique d'une
chaîne numérique initiale composée d'espaces
éventuels, suivis optionnellement du signe -, et de
zéro ou plusieurs chiffres, éventuellement suivi
d'un point décimal et de zéro ou plusieurs
chiffres.

-r Inverser l'ordre de tri, afin que les lignes avec
la plus grande valeur de clé apparaissent en
premier.

Le +0 (chiffre zéro) est ici:

+POS1 [-POS2]
Indiquer un champ à utiliser comme clé de tri pour
chaque ligne. Le champ consiste en une portion de
de ligne débutant à la position POS1, et s'étendant
jusqu'à POS2 non-inclue (ou jusqu'à la fin de la
ligne si POS2 n'est pas mentionnée). Les positions
des champs et des caractères sont numérotées à par­
tir de 0.

+0nr triera donc à partir du 1er champ vu comme un chiffre en
commençant par le plus gros.

Si tu tries par nom des fichiers, c'est que tu ne suis pas les
instructions de façon exacte.


Denis

Avatar
GP
Denis Beauregard wrote:
Le Fri, 28 Jan 2005 22:15:11 -0500, GP
écrivait dans fr.comp.os.linux.configuration:


Mots clés: Retrouver trouver retracer lister ls gros fichiers répertoires

Pour les répertoires:

du -Sk . | sort -nr | more

Pour les fichiers:

find . -printf "%k KB %h/%fn" | sort +0nr | more

Mon petit problème est le suivant: où est-il dit que +0nr classe les fichiers
par ordre alphabétique après les avoir classés par grosseur? J'ai trouvé ça
sur le net, mais je ne trouve rien là-dessus dans les man pages.



http://www.linux-france.org/article/man-fr/man1/sort-1.html

-n Comparer suivant la valeur arithmétique d'une
chaîne numérique initiale composée d'espaces
éventuels, suivis optionnellement du signe -, et de
zéro ou plusieurs chiffres, éventuellement suivi
d'un point décimal et de zéro ou plusieurs
chiffres.

-r Inverser l'ordre de tri, afin que les lignes avec
la plus grande valeur de clé apparaissent en
premier.

Le +0 (chiffre zéro) est ici:

+POS1 [-POS2]
Indiquer un champ à utiliser comme clé de tri pour
chaque ligne. Le champ consiste en une portion de
de ligne débutant à la position POS1, et s'étendant
jusqu'à POS2 non-inclue (ou jusqu'à la fin de la
ligne si POS2 n'est pas mentionnée). Les positions
des champs et des caractères sont numérotées à par­
tir de 0.

+0nr triera donc à partir du 1er champ vu comme un chiffre en
commençant par le plus gros.

Si tu tries par nom des fichiers, c'est que tu ne suis pas les
instructions de façon exacte.


Mais non, tout est correct. Comme il n'y a pas de deuxième position de
spécifiée, le champ commence à la position 0 et se poursuit jusqu'à la fin.
Après avoir trié le premier champ par ordre numérique, il trie le second par
ordre alphabétique.

Je te remercie de la référence. Ce man page est bien clair que celui que j'ai,
en anglais en tout cas, sur mon ordi. Le mien ne parle que de spécifier une
position avec -k . Puis, à la fin, il est écrit:

POS is F[.C][OPTS], where F is the field number and C the character position
in the field. OPTS is one or more single-letter ordering options, which
override global ordering options for that key. If no key is given, use the
entire line as the key.

Peux-tu m'envoyer ton man page pour sort, svp.

GP


Avatar
Eric Jacoboni
On Sat, 29 Jan 2005 07:52:40 +0100, GP wrote
(in article ):

Peux-tu m'envoyer ton man page pour sort, svp.


Tu peux aussi faire ton marché ici : <http://www.freebsd.org/cgi/man.cgi>

En général, les manpages de Solaris et *BSD sont bien mieux faites que celles
de Linux (qui ne devraient même plus exister puisque "c'est info qu'il vous
faut").

________________________________________________

Hogwasher, Premier News and Mail for OS X
http://www.asar.com/cgi-bin/product.pl?58/hogwasher.html
________________________________________________

Avatar
Nicolas George
Denis Beauregard wrote in message
:
http://www.linux-france.org/article/man-fr/man1/sort-1.html
<snip>

+POS1 [-POS2]
Indiquer un champ à utiliser comme clé de tri pour
chaque ligne.
<snip>


Et encore une page de man traduite qui n'est pas à jour.

# On older systems, `sort' supports an obsolete origin-zero syntax
# `+POS1 [-POS2]' for specifying sort keys. POSIX 1003.1-2001 (*note
# Standards conformance::) does not allow this; use `-k' instead.

La notation +POS est obsolète et ne doit plus être utilisée.

Avatar
Denis Beauregard
Le Sat, 29 Jan 2005 01:52:40 -0500, GP
écrivait dans fr.comp.os.linux.configuration:

http://www.linux-france.org/article/man-fr/man1/sort-1.html

Peux-tu m'envoyer ton man page pour sort, svp.



M'enfin, le lien était dans le message...


Denis


Avatar
Stephane Chazelas
2005-01-28, 22:15(-05), GP:
Mots clés: Retrouver trouver retracer lister ls gros fichiers répertoires

Pour les répertoires:

du -Sk . | sort -nr | more


du ca donne l'usage disque, pas la taille.

Pour les fichiers:

find . -printf "%k KB %h/%fn" | sort +0nr | more


%k ne donne pas la taille non-plus.

$ ls -l a
-rwxr-xr-x 1 chazelas chazelas 1048576001 Jan 29 16:14 a
$ du -Sk a
16 a
$ find a -printf '%kn'
16
$ find a -printf '%bn'
32
$ find a -printf '%sn'
1048576001


Mon petit problème est le suivant: où est-il dit que +0nr classe les fichiers
par ordre alphabétique après les avoir classés par grosseur? J'ai trouvé ça
sur le net, mais je ne trouve rien là-dessus dans les man pages.
[...]


Un peu obsolete le +0. Et quid des noms de fichiers qui
contiennent des sauts de lignes?

find . -printf '%k KB %p' | sort -z -k1,1rn -k3 | tr n | more

Avec zsh:

**/*(NDOL)

est la liste des fichiers par ordre decroissant de taille (pas
d'occupation disque).

--
Stéphane

Avatar
GP
Denis Beauregard wrote:
Le Sat, 29 Jan 2005 01:52:40 -0500, GP
écrivait dans fr.comp.os.linux.configuration:


http://www.linux-france.org/article/man-fr/man1/sort-1.html



Peux-tu m'envoyer ton man page pour sort, svp.



M'enfin, le lien était dans le message...


Ton man page pour Debian, merde!

GP



Avatar
GP
Eric Jacoboni wrote:
On Sat, 29 Jan 2005 07:52:40 +0100, GP wrote
(in article ):


Peux-tu m'envoyer ton man page pour sort, svp.



Tu peux aussi faire ton marché ici : <http://www.freebsd.org/cgi/man.cgi>

En général, les manpages de Solaris et *BSD sont bien mieux faites que celles
de Linux (qui ne devraient même plus exister puisque "c'est info qu'il vous
faut").


Sauf qu'ici, c'est exactement la même. Quant à info, c'est ajouter un mode de
navigation obscur aux mêmes pages mal écrites.

Quand ti rencontres quelque chose comme ça:

POS is F[.C][OPTS], where F is the field number and C the character
position in the field. OPTS is one or more single-letter ordering
options, which override global ordering options for that key. If no
key is given, use the entire line as the key.

Et que tout ce que tu as au sujet de POS auparavent, c'est:

-k, --key=POS1[,POS2]
start a key at POS1, end it at POS 2 (origin 1)

ça te dit quoi?

J'ai téléchargé toutes les man pages de Lonix France, hier. Je me dis que si
même Beaur a réussi à comprendre, ce soit être génial :)

GP


Avatar
Eric Jacoboni
On Sat, 29 Jan 2005 19:20:28 +0100, GP wrote
(in article ):

Sauf qu'ici, c'est exactement la même. Quant à info, c'est ajouter un mode de

navigation obscur aux mêmes pages mal écrites.


Ma réflexion sur info, c'était de l'humour, hein... c'est pour ça que j'avais
mis des guillemets. Info est une vaste merde et un barbu célèbre a un jour
décidé que c'était mieux que man : bilan des courses, des manpages Linux
pourries.

Quand ti rencontres quelque chose comme ça:

POS is F[.C][OPTS], where F is the field number and C the character
position in the field. OPTS is one or more single-letter ordering
options, which override global ordering options for that key. If no
key is given, use the entire line as the key.

Et que tout ce que tu as au sujet de POS auparavent, c'est:

-k, --key=POS1[,POS2]
start a key at POS1, end it at POS 2 (origin 1)

ça te dit quoi?


Comme ça ? Sans chercher plus loin ?

Qu'il faut utiliser une syntaxe du genre -k3.2 pour trier sur le deuxième
caractère (vérifier si les positions commencent à 0 ou à 1) du troisième
champ (même remarque) ? et que l'on peut mettre une lettre, voire plusieurs,
après 2 pour changer l'ordre du tri ? Que donc il faudrait étudier plus avant
la page de man pour voir quels caractères sont possibles ?

Je ne vois rien d'obscur là-dedans... donc j'imagine que je n'ai pas saisi le
problème.


--
Jaco

________________________________________________

Hogwasher, Premier News and Mail for OS X
http://www.asar.com/cgi-bin/product.pl?58/hogwasher.html
________________________________________________

Avatar
GP
Stephane Chazelas wrote:
2005-01-28, 22:15(-05), GP:

Mots clés: Retrouver trouver retracer lister ls gros fichiers répertoires

Pour les répertoires:

du -Sk . | sort -nr | more



du ca donne l'usage disque, pas la taille.


Oui, il peut rester quelques bytes de libres sur le cluster. De toute façon,
si c'est pour libérer de l'espace, ce qui nous intéresse, c'est l'usage du disque.

Pour les fichiers:

find . -printf "%k KB %h/%fn" | sort +0nr | more



%k ne donne pas la taille non-plus.

$ ls -l a
-rwxr-xr-x 1 chazelas chazelas 1048576001 Jan 29 16:14 a
$ du -Sk a
16 a
$ find a -printf '%kn'
16
$ find a -printf '%bn'
32
$ find a -printf '%sn'
1048576001


%k donne la taille arrondie au Ko près, %s donne la taille en octets. Tu peux
nous expliquer comment tu peux faire 1048576001 octets à partir de 16k?

J'ai comme l'impression que tu fais dans la même spécialité que George Les Lapins.

GP


1 2 3 4 5