Где все мои inodes используют?

Или вы могли бы просто пойти с:

customerList = Task.Run<List<Customer>>(() => { return GetCustomers(); }).Result;

Для этого для компиляции убедитесь, что вы ссылаетесь на сборку:

System.Net.Http.Formatting
52
задан Joel 7 December 2008 в 15:34
поделиться

2 ответа

Так в основном Вы ищете, какие каталоги имеют много файлов? Вот первый удар в нем:

find . -type d -print0 | xargs -0 -n1 count_files | sort -n

, где "count_files" является сценарием оболочки, который делает (благодарит Jonathan)

echo $(ls -a "$1" | wc -l) $1
20
ответ дан Jonathan Leffler 7 November 2019 в 19:00
поделиться

Вот простой сценарий Perl, это сделает это:

#!/usr/bin/perl -w

use strict;

sub count_inodes($);
sub count_inodes($)
{
  my $dir = shift;
  if (opendir(my $dh, $dir)) {
    my $count = 0;
    while (defined(my $file = readdir($dh))) {
      next if ($file eq '.' || $file eq '..');
      $count++;
      my $path = $dir . '/' . $file;
      count_inodes($path) if (-d $path);
    }
    closedir($dh);
    printf "%7d\t%s\n", $count, $dir;
  } else {
    warn "couldn't open $dir - $!\n";
  }
}

push(@ARGV, '.') unless (@ARGV);
while (@ARGV) {
  count_inodes(shift);
}

, Если Вы хотите, чтобы он работал как du (где каждое количество каталога также включает рекурсивное количество подкаталога) тогда изменяют рекурсивную функцию на return $count, и затем в точке рекурсии скажите:

$count += count_inodes($path) if (-d $path);
6
ответ дан Alnitak 7 November 2019 в 19:00
поделиться
Другие вопросы по тегам:

Похожие вопросы: