IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Shell et commandes GNU Discussion :

Lister la taille des fichiers par utilisateurs


Sujet :

Shell et commandes GNU

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de nekcorp
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    592
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Décembre 2006
    Messages : 592
    Par défaut Lister la taille des fichiers par utilisateurs
    Bonjour,

    Je dois gérer l’espace disque des machines utilisées par plusieurs utilisateurs. Je souhaiter savoir s’il existe une commande qui liste la taille des fichiers par utilisateurs ?

    Merci d’avance pour votre aide.

  2. #2
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 672
    Par défaut
    Bonjour,

    find peut faire ça.
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  3. #3
    Responsable Systèmes


    Homme Profil pro
    Gestion de parcs informatique
    Inscrit en
    Août 2011
    Messages
    18 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Gestion de parcs informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Août 2011
    Messages : 18 310
    Par défaut
    Tu peux regarder aussi au niveau de la commande du.
    du -hs /home/toto te donnera le poids du dossier /home/toto
    voir dans le man pour les options avancées.
    Ma page sur developpez.com : http://chrtophe.developpez.com/ (avec mes articles)
    Mon article sur le P2V, mon article sur le cloud
    Consultez nos FAQ : Windows, Linux, Virtualisation

  4. #4
    Expert confirmé Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 294
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 294
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    $ find / -type f -printf "%u %k %p\n" 2>/dev/null|awk '{a[$1]+=$2;} END{for (i in a) print i,a[i];}'
    colord 44
    Flodelarab 22580952
    systemd-timesync 0
    Debian-gdm 272
    avahi 4
    daemon 52
    man 2752
    root 9410672
    "find" -> cherche.
    "/" -> dans tout le système
    "-type f" -> les fichiers
    "-printf" -> et tu m'afficheras
    "%u" -> le propriétaire du fichier
    "%k" -> la taille du fichier en kilo-octets
    "%p" -> et le nom complet du fichier
    "2>/dev/null" -> en envoyant les messages d'erreurs à la poubelle (comme des fichiers inaccessibles pour des questions de droits)

    "|" -> Puis, tu enverras ce résultat dans "awk" pour retraitement

    "a[$1]+=$2;" -> Faire la somme des tailles par utilisateur et stocker cela dans le tableau associatif "a".
    "for (i in a)" -> pour chaque propriétaire,
    "print i,a[i];" -> afficher le nom et la taille totale.

  5. #5
    Membre éclairé Avatar de nekcorp
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    592
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Décembre 2006
    Messages : 592
    Par défaut
    Citation Envoyé par Flodelarab Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    $ find / -type f -printf "%u %k %p\n" 2>/dev/null|awk '{a[$1]+=$2;} END{for (i in a) print i,a[i];}'
    colord 44
    Flodelarab 22580952
    systemd-timesync 0
    Debian-gdm 272
    avahi 4
    daemon 52
    man 2752
    root 9410672
    "find" -> cherche.
    "/" -> dans tout le système
    "-type f" -> les fichiers
    "-printf" -> et tu m'afficheras
    "%u" -> le propriétaire du fichier
    "%k" -> la taille du fichier en kilo-octets
    "%p" -> et le nom complet du fichier
    "2>/dev/null" -> en envoyant les messages d'erreurs à la poubelle (comme des fichiers inaccessibles pour des questions de droits)

    "|" -> Puis, tu enverras ce résultat dans "awk" pour retraitement

    "a[$1]+=$2;" -> Faire la somme des tailles par utilisateur et stocker cela dans le tableau associatif "a".
    "for (i in a)" -> pour chaque propriétaire,
    "print i,a[i];" -> afficher le nom et la taille totale.
    Merci beaucoup

  6. #6
    Expert confirmé
    Homme Profil pro
    Développeur informatique en retraite
    Inscrit en
    Avril 2008
    Messages
    2 103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique en retraite

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 103
    Par défaut
    Citation Envoyé par Flodelarab Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $ find / -type f -printf "%u %k %p\n" 2>/dev/null|awk '{a[$1]+=$2;} END{for (i in a) print i,a[i];}'
    "a[$1]+=$2;" -> Faire la somme des tailles par utilisateur et stocker cela dans le tableau associatif "a".
    Ah mais non!
    Pas bon du tout, ça!
    Ta proposition ne répond pas du tout à la demande de l'utilisateur!

    L'utilisateur a demandé, je cite:
    une commande qui liste la taille des fichiers par utilisateurs
    Il n'a jamais demandé de faire la somme, mais bien d'avoir la liste de tous les fichiers de chaque utilisateur avec leur taille (aux fichiers, pas aux utilisateurs!)...


    PS: bravo quand même Flodelarab pour ton bel effort (plussoyé)!
    PPS: désolé, pas pu résister...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [PowerShell] Lister la taille totale des fichiers par extension
    Par Somyx dans le forum Scripts/Batch
    Réponses: 2
    Dernier message: 15/06/2018, 14h15
  2. [Batch] Copier des fichiers par taille
    Par JD6259 dans le forum Scripts/Batch
    Réponses: 2
    Dernier message: 04/06/2013, 21h58
  3. Comment trier des fichiers par types et par tailles?
    Par xXO--Hades--OXx dans le forum Android
    Réponses: 3
    Dernier message: 07/12/2010, 12h09
  4. Gestion des fichiers par utilisateurs
    Par badi3a82 dans le forum ASP.NET
    Réponses: 8
    Dernier message: 06/07/2010, 11h31
  5. Trier des fichiers par taille par le VB
    Par tedparker dans le forum Access
    Réponses: 2
    Dernier message: 23/08/2006, 11h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo